Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
27b8076178 | |||
bcd1511bb4 |
|
@ -28,7 +28,6 @@
|
|||
"function-call-argument-newline":"off",
|
||||
"max-len": [1, 80, 2, {"ignoreComments": true}],
|
||||
"no-bitwise": 0,
|
||||
"no-restricted-syntax": 0,
|
||||
"no-plusplus" : "off",
|
||||
"no-param-reassign": "off",
|
||||
"no-mixed-operators":"off",
|
||||
|
|
1
.gitignore
vendored
|
@ -10,7 +10,6 @@ logs
|
|||
*.log
|
||||
npm-debug.log*
|
||||
*.tmp
|
||||
records.json
|
||||
|
||||
pids
|
||||
*.pid
|
||||
|
|
|
@ -1,93 +0,0 @@
|
|||
# Code of conduct
|
||||
|
||||
## History
|
||||
|
||||
A Code of Conduct (hereafter: **“CoC”**) is nowadays demanded by a variety of actors, institutions and corporations. It sets basic rules and guidelines for a community and its contributors to follow and consequences in case of a violation.
|
||||
In order to avoid any future confusion or discussion about it, the founder of pixelplanet took an active stance, considered multiple options and created this document.
|
||||
|
||||
This CoC is derived from the [SQLite Code of Ethics](https://sqlite.org/codeofethics.html).
|
||||
|
||||
## Our Pledge
|
||||
|
||||
The founder of pixelplanet, and developers at the time when this document was derived (21.07.2023), have pledged to try to govern their interactions with each other, with their clients, and with the larger pixelplanet user community in accordance with the “Tools of good works” from chapter 4 of [The Rule of St. Benedict](https://theruleofbenedict.com/) (hereafter: **“The Rule“**). They view *The Rule* as their promise to all pixelplanet users of how the developers are expected to behave. This is a one-way promise, or covenant. In other words, the developers are saying: “We will treat you this way regardless of how you treat us.”
|
||||
|
||||
This rule has proven its mettle in thousands of diverse communities for over 1,500 years, and has served as a baseline for many civil law codes since the time of Charlemagne.
|
||||
|
||||
## Scope of Application
|
||||
|
||||
No one is required to follow *The Rule*, to know *The Rule*, or even to think that *The Rule* is a good idea. The Founder of pixelplanet believes that anyone who follows *The Rule* will live a happier and more productive life, but individuals are free to dispute or ignore that advice if they wish.
|
||||
|
||||
## The Rule
|
||||
|
||||
1. First of all, love the Lord God with your whole heart, your whole soul, and your whole strength.
|
||||
2. Then, love your neighbor as yourself.
|
||||
3. Do not murder.
|
||||
4. Do not commit adultery.
|
||||
5. Do not steal.
|
||||
6. Do not covet.
|
||||
7. Do not bear false witness.
|
||||
8. Honor all people.
|
||||
9. Do not do to another what you would not have done to yourself.
|
||||
10. Deny oneself in order to follow Christ.
|
||||
11. Chastise the body.
|
||||
12. Do not become attached to pleasures.
|
||||
13. Love fasting.
|
||||
14. Relieve the poor.
|
||||
15. Clothe the naked.
|
||||
16. Visit the sick.
|
||||
17. Bury the dead.
|
||||
18. Be a help in times of trouble.
|
||||
19. Console the sorrowing.
|
||||
20. Be a stranger to the world's ways.
|
||||
21. Prefer nothing more than the love of Christ.
|
||||
22. Do not give way to anger.
|
||||
23. Do not nurse a grudge.
|
||||
24. Do not entertain deceit in your heart.
|
||||
25. Do not give a false peace.
|
||||
26. Do not forsake charity.
|
||||
27. Do not swear, for fear of perjuring yourself.
|
||||
28. Utter only truth from heart and mouth.
|
||||
29. Do not return evil for evil.
|
||||
30. Do no wrong to anyone, and bear patiently wrongs done to yourself.
|
||||
31. Love your enemies.
|
||||
32. Do not curse those who curse you, but rather bless them.
|
||||
33. Bear persecution for justice's sake.
|
||||
34. Be not proud.
|
||||
35. Be not addicted to wine.
|
||||
36. Be not a great eater.
|
||||
37. Be not drowsy.
|
||||
38. Be not lazy.
|
||||
39. Be not a grumbler.
|
||||
40. Be not a detractor.
|
||||
41. Put your hope in God.
|
||||
42. Attribute to God, and not to self, whatever good you see in yourself.
|
||||
43. Recognize always that evil is your own doing, and to impute it to yourself.
|
||||
44. Fear the Day of Judgment.
|
||||
45. Be in dread of hell.
|
||||
46. Desire eternal life with all the passion of the spirit.
|
||||
47. Keep death daily before your eyes.
|
||||
48. Keep constant guard over the actions of your life.
|
||||
49. Know for certain that God sees you everywhere.
|
||||
50. When wrongful thoughts come into your heart, dash them against Christ immediately.
|
||||
51. Disclose wrongful thoughts to your spiritual mentor.
|
||||
52. Guard your tongue against evil and depraved speech.
|
||||
53. Do not love much talking.
|
||||
54. Speak no useless words or words that move to laughter.
|
||||
55. Do not love much or boisterous laughter.
|
||||
56. Listen willingly to holy reading.
|
||||
57. Devote yourself frequently to prayer.
|
||||
58. Daily in your prayers, with tears and sighs, confess your past sins to God, and amend them for the future.
|
||||
59. Fulfill not the desires of the flesh; hate your own will.
|
||||
60. Obey in all things the commands of those whom God has placed in authority over you even though they (which God forbid) should act otherwise, mindful of the Lord's precept, "Do what they say, but not what they do."
|
||||
61. Do not wish to be called holy before one is holy; but first to be holy, that you may be truly so called.
|
||||
62. Fulfill God's commandments daily in your deeds.
|
||||
63. Love chastity.
|
||||
64. Hate no one.
|
||||
65. Be not jealous, nor harbor envy.
|
||||
66. Do not love quarreling.
|
||||
67. Shun arrogance.
|
||||
68. Respect your seniors.
|
||||
69. Love your juniors.
|
||||
70. Pray for your enemies in the love of Christ.
|
||||
71. Make peace with your adversary before the sun sets.
|
||||
72. Never despair of God's mercy.
|
675
COPYING
|
@ -1,675 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. You must make sure that they, too, receive
|
||||
or can get the source code. And you must show them these terms so they
|
||||
know their rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<https://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
|
687
LICENSE
|
@ -1,21 +1,674 @@
|
|||
pixelplanet - Collaborative online canvas to draw with multiple people
|
||||
Copyright (C) 2020 hf
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
The content of the CODE_OF_CONDUCT.md file in this directory shall not
|
||||
be modified by anyone but its initial author. This notice and the
|
||||
CODE_OF_CONDUCT.md file shall be included in all copies and
|
||||
modified versions of this software.
|
||||
Preamble
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. See the 'COPYING' file in this directory.
|
||||
If not, see <https://www.gnu.org/licenses/>.
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. You must make sure that they, too, receive
|
||||
or can get the source code. And you must show them these terms so they
|
||||
know their rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{one line to give the program's name and a brief idea of what it does.}
|
||||
Copyright (C) {year} {name of author}
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
PixelCanvas Copyright (C) 2017 Rafael Arquero
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
|
|
18
README.md
|
@ -1,5 +1,3 @@
|
|||
> **Currently pixelplanet is being developed in a another private repository. This development version diverted and is incompatible with the stable version here. Until it is ready, this public repository will be frozen.**
|
||||
|
||||
# PixelPlanet.fun
|
||||
|
||||
|
||||
|
@ -9,7 +7,7 @@ Official repository of [pixelplanet.fun](http://www.pixelplanet.fun).
|
|||
|
||||
![videothumb](promotion/videothumb.gif)
|
||||
|
||||
> If you want to help us translate pixelplanet.fun, look into [i18n](./i18n)
|
||||
> **TRANSLATORS NEEDED** If you want to help us translate pixelplanet.fun, look into [i18n](./i18n)
|
||||
|
||||
To the 2nd anniversary of r/space, pixelplanet takes pixelgames to a new level. Place pixels, create pixelart and fight faction wars on pixelplanet.fun.
|
||||
Pixelplanet is a 65k x 65k large canvas that is a map of the world and can also be seen as 3d globe, you can place pixels where ever you want, build an island, take over another country with a flag or just create pixelart.
|
||||
|
@ -258,19 +256,11 @@ If v is set and true for a canvas in the canvas.json, it will be a 3D voxel canv
|
|||
|
||||
Run `npm run lint:src` to check for code errors and warnings or `npm run lint -- ./your/file.js` to check a single file.
|
||||
|
||||
Compile with source-maps and debug options (but only english language) with
|
||||
|
||||
[ttag](https://github.com/ttag-org/ttag/) is used for handling translations. For server-side rendering the `Accept-Language` header gets checked and the first locale used and on-the-fly translated (`src/core/ttag.js` provides the functions for it). On the client-side a seperate bundle for every language gets provided.
|
||||
The language definitions in `i18n/template.pot` and `i18n/template-ssr.pot` get updated when doing a dev build with
|
||||
```
|
||||
npm run build:dev
|
||||
```
|
||||
|
||||
[ttag](https://github.com/ttag-org/ttag/) is used for handling translations. For server-side rendering the `Accept-Language` header gets checked and the first locale used and on-the-fly translated (`src/core/ttag.js` provides the functions for it). On the client-side a seperate bundle for every language gets provided.
|
||||
The language definitions in `i18n/template.pot` and `i18n/template-ssr.pot` get updated when doing a full production build with all languages (`npm run build`)-
|
||||
|
||||
To build only specific languages, you can define them with the `--langs` flag:
|
||||
|
||||
```
|
||||
npm run build -- --langs de,gr
|
||||
```
|
||||
which also only builds the default local in a development environment for debugging.
|
||||
|
||||
You can use `npm run babel-node ./utils/script.js` to execute a script with local babel (path always relative to the root directory).
|
||||
|
|
|
@ -13,9 +13,6 @@ Basic nodejs script to print a message and a youtube video, used as a message wh
|
|||
## githook.sh
|
||||
Pixelplanet has its own git repository for deployment on the live system, if an commit get pushed to it, it will automatically build the canvas and deploy it. This hook is managing that on the server.
|
||||
|
||||
## rebuild.sh
|
||||
script to manually trigger rebuilding and restarting pixelplanet on the server
|
||||
|
||||
## Some notes:
|
||||
Cloudflare Caching Setting `Broser Cache Expiration` should be set to `Respect Existing Headers` or it would default to 4h, which is unreasonable for chunks.
|
||||
Additinally make sure that cachebreakers get blocked by setting Cloudflare Firewall rules to block empty query strings at least for chunks
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
apps:
|
||||
- script : ./server.js
|
||||
name : 'ppfun'
|
||||
node_args : --nouse-idle-notification --expose-gc
|
||||
watch : [ 'server.js' ]
|
||||
watch_delay: 5000
|
||||
name : 'ppfun-server'
|
||||
node_args: --nouse-idle-notification --expose-gc
|
||||
env:
|
||||
PORT: 5000
|
||||
PORT: 80
|
||||
HOST: "localhost"
|
||||
REDIS_URL: 'redis://localhost:6379'
|
||||
MYSQL_HOST: "localhost"
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
#!/bin/bash
|
||||
# This hook builds pixelplanet after a push to a development branch,
|
||||
# and starts the dev-canvas
|
||||
# This hook builds pixelplanet after a push, and deploys it, it should be ron post-receive
|
||||
# If it is the master branch, it will deploy it on the life system, and other branch will get deployed to the dev-canvas (a second canvas that is running on the server)
|
||||
#
|
||||
# To set up a server to use this, you have to go through the building steps manually first.
|
||||
#
|
||||
#folder for building the canvas (the git repository will get checkout there and the canvas will get built thtere)
|
||||
#folder for building the canvas (the git repository will get checkout there and the canvas will get buil thtere)
|
||||
BUILDDIR="/home/pixelpla/pixelplanet-build"
|
||||
#folder for dev canvas
|
||||
DEVFOLDER="/home/pixelpla/pixelplanet-dev"
|
||||
#folder for production canvas
|
||||
PFOLDER="/home/pixelpla/pixelplanet"
|
||||
|
||||
should_reinstall () {
|
||||
local TMPFILE="${BUILDDIR}/package.json.${1}.tmp"
|
||||
|
@ -31,12 +33,14 @@ npm_reinstall () {
|
|||
copy () {
|
||||
local TARGETDIR="${1}"
|
||||
local REINSTALL="${2}"
|
||||
cp -r "${BUILDDIR}"/dist/*.js "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/workers "${TARGETDIR}/"
|
||||
cp -r dist/*.js "${TARGETDIR}/"
|
||||
cp -r dist/workers "${TARGETDIR}/"
|
||||
rm -rf "${TARGETDIR}/public/assets"
|
||||
cp -r "${BUILDDIR}"/dist/public "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/captchaFonts "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/package.json "${TARGETDIR}/"
|
||||
cp -r dist/public "${TARGETDIR}/"
|
||||
cp -r dist/captchaFonts "${TARGETDIR}/"
|
||||
cp -r dist/package.json "${TARGETDIR}/"
|
||||
cp -r dist/assets.json "${TARGETDIR}/"
|
||||
cp -r dist/styleassets.json "${TARGETDIR}/"
|
||||
mkdir -p "${TARGETDIR}/log"
|
||||
cd "${TARGETDIR}"
|
||||
[ $REINSTALL -eq 0 ] && npm_reinstall
|
||||
|
@ -49,10 +53,28 @@ do
|
|||
GIT_WORK_TREE="$BUILDDIR" GIT_DIR="${BUILDDIR}/.git" git fetch --all
|
||||
cd "$BUILDDIR"
|
||||
branch=$(git rev-parse --symbolic --abbrev-ref $refname)
|
||||
if [ "test" == "$branch" ] || [ "devel" == "$branch" ]; then
|
||||
if [ "master" == "$branch" ]; then
|
||||
echo "---UPDATING REPO ON PRODUCTION SERVER---"
|
||||
GIT_WORK_TREE="$BUILDDIR" GIT_DIR="${BUILDDIR}/.git" git reset --hard "origin/$branch"
|
||||
COMMITS=`git log --pretty=format:'- %s%b' $newrev ^$oldrev`
|
||||
COMMITS=`echo "$COMMITS" | sed ':a;N;$!ba;s/\n/\\\n/g'`
|
||||
echo "---BUILDING pixelplanet---"
|
||||
should_reinstall master
|
||||
DO_REINSTALL=$?
|
||||
[ $DO_REINSTALL -eq 0 ] && npm_reinstall
|
||||
npm run build
|
||||
echo "---RESTARTING CANVAS---"
|
||||
pm2 stop ppfun-server
|
||||
pm2 stop ppfun-backups
|
||||
copy "${PFOLDER}" "${DO_REINSTALL}"
|
||||
cd "$PFOLDER"
|
||||
pm2 start ecosystem-backup.yml
|
||||
else
|
||||
echo "---UPDATING REPO ON DEV SERVER---"
|
||||
pm2 stop ppfun-server-dev
|
||||
GIT_WORK_TREE="$BUILDDIR" GIT_DIR="${BUILDDIR}/.git" git reset --hard "origin/$branch"
|
||||
COMMITS=`git log --pretty=format:'- %s%b' $newrev ^$oldrev`
|
||||
COMMITS=`echo "$COMMITS" | sed ':a;N;$!ba;s/\n/\\\n/g'`
|
||||
echo "---BUILDING pixelplanet---"
|
||||
should_reinstall dev
|
||||
DO_REINSTALL=$?
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
# set realip header to actual ip, when
|
||||
# going through cloudflare
|
||||
|
||||
# - IPv4
|
||||
set_real_ip_from 173.245.48.0/20;
|
||||
set_real_ip_from 103.21.244.0/22;
|
||||
|
@ -29,31 +26,3 @@ set_real_ip_from 2c0f:f248::/32;
|
|||
|
||||
real_ip_header CF-Connecting-IP;
|
||||
real_ip_recursive on;
|
||||
|
||||
# check if request is going through cloudflare
|
||||
# use with like: if ($cloudflare_ip != 1) {return 403}
|
||||
geo $realip_remote_addr $cloudflare_ip {
|
||||
default 0;
|
||||
173.245.48.0/20 1;
|
||||
103.21.244.0/22 1;
|
||||
103.22.200.0/22 1;
|
||||
103.31.4.0/22 1;
|
||||
141.101.64.0/18 1;
|
||||
108.162.192.0/18 1;
|
||||
190.93.240.0/20 1;
|
||||
188.114.96.0/20 1;
|
||||
197.234.240.0/22 1;
|
||||
198.41.128.0/17 1;
|
||||
162.158.0.0/15 1;
|
||||
104.16.0.0/13 1;
|
||||
104.24.0.0/14 1;
|
||||
172.64.0.0/13 1;
|
||||
131.0.72.0/22 1;
|
||||
2400:cb00::/32 1;
|
||||
2606:4700::/32 1;
|
||||
2803:f800::/32 1;
|
||||
2405:b500::/32 1;
|
||||
2405:8100::/32 1;
|
||||
2a06:98c0::/29 1;
|
||||
2c0f:f248::/32 1;
|
||||
}
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# halfed because of ddos
|
||||
limit_req_zone $binary_remote_addr zone=websocket:5m rate=30r/m;
|
||||
limit_req_zone $binary_remote_addr zone=websocket:5m rate=1r/s;
|
||||
limit_req_zone $binary_remote_addr zone=general:5m rate=1r/s;
|
||||
# from 40 to 30 because of ddos
|
||||
limit_req_zone $binary_remote_addr zone=chunks:5m rate=40r/s;
|
||||
limit_req_zone $binary_remote_addr zone=captcha:5m rate=20r/m;
|
||||
limit_req_zone $binary_remote_addr zone=authimp:5m rate=5r/m;
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
geo $allow_ws {
|
||||
default 0;
|
||||
178.158.0.0/17 1;
|
||||
91.200.160.0/22 1;
|
||||
92.118.132.0/24 1;
|
||||
195.189.44.0/22 1;
|
||||
# Sevastopol
|
||||
185.71.80.0/22 1;
|
||||
195.209.151.0/24 1;
|
||||
213.59.160.0/20 1;
|
||||
62.76.12.0/24 1;
|
||||
}
|
||||
|
||||
geo $deny_ws {
|
||||
default 0;
|
||||
# Google
|
||||
|
@ -52,50 +39,4 @@ geo $deny_ws {
|
|||
2a02:6b8:c08::/48 1;
|
||||
# PlusWeb
|
||||
2a0a:fa40::/29 1;
|
||||
# Some Brazil University
|
||||
200.235.0.0/17 1;
|
||||
# Turk spamer
|
||||
85.100.70.0/23 1;
|
||||
85.99.178.0/23 1;
|
||||
# Hohols
|
||||
103.108.94.130 1;
|
||||
104.223.100.81 1;
|
||||
109.236.81.170 1;
|
||||
141.95.54.180 1;
|
||||
146.0.86.196 1;
|
||||
169.150.196.109 1;
|
||||
178.17.170.189 1;
|
||||
178.20.142.170 1;
|
||||
185.107.56.163 1;
|
||||
185.231.207.118 1;
|
||||
185.43.191.203 1;
|
||||
185.72.247.151 1;
|
||||
199.244.49.79 1;
|
||||
2a01:36d:1400:28d2:bd93:65a6:5e31:e322 1;
|
||||
2a09:bac1:7540:48::84:6d 1;
|
||||
31.192.105.104 1;
|
||||
31.222.253.215 1;
|
||||
31.223.105.113 1;
|
||||
37.120.156.234 1;
|
||||
37.63.9.104 1;
|
||||
37.78.224.175 1;
|
||||
45.132.194.16 1;
|
||||
46.166.182.34 1;
|
||||
46.166.182.57 1;
|
||||
5.173.158.92 1;
|
||||
5.173.172.228 1;
|
||||
5.180.128.110 1;
|
||||
83.71.204.117 1;
|
||||
85.100.66.238 1;
|
||||
85.110.146.67 1;
|
||||
86.120.52.125 1;
|
||||
86.124.56.51 1;
|
||||
88.134.42.187 1;
|
||||
89.43.30.38 1;
|
||||
91.219.238.174 1;
|
||||
93.115.28.181 1;
|
||||
94.110.186.197 1;
|
||||
99.224.5.31 1;
|
||||
141.94.31.178 1;
|
||||
146.70.52.247 1;
|
||||
}
|
||||
|
|
|
@ -8,21 +8,8 @@
|
|||
# root /home/pixelpla/pixelplace-redirect/wait;
|
||||
#}
|
||||
|
||||
include /etc/nginx/includes/certbotroot.conf;
|
||||
|
||||
set $test 0;
|
||||
if ($cloudflare_ip != 1) {
|
||||
return 404;
|
||||
}
|
||||
if ($http_cf_ipcountry = "UA") {
|
||||
set $test 1;
|
||||
}
|
||||
if ($deny_ws) {
|
||||
set $test 1;
|
||||
}
|
||||
if ($allow_ws) {
|
||||
set $test 0;
|
||||
}
|
||||
include /etc/nginx/includes/certbotroot.conf;
|
||||
|
||||
location / {
|
||||
limit_req zone=general burst=20 delay=10;
|
||||
|
@ -79,8 +66,9 @@ location /chunks {
|
|||
}
|
||||
|
||||
location /ws {
|
||||
#proxy_no_cache 1;
|
||||
limit_req zone=websocket burst=5;
|
||||
if ($test) {
|
||||
if ($deny_ws) {
|
||||
return 403;
|
||||
}
|
||||
proxy_http_version 1.1;
|
||||
|
@ -96,8 +84,8 @@ location /captcha.svg {
|
|||
proxy_no_cache 1;
|
||||
limit_req zone=captcha burst=5;
|
||||
limit_req_status 429;
|
||||
if ($test) {
|
||||
return 403;
|
||||
if ($http_user_agent ~* (python-requests)) {
|
||||
return 503;
|
||||
}
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_pass http://$ppfun$request_uri;
|
||||
|
@ -121,9 +109,6 @@ location /mcws {
|
|||
|
||||
location /api/auth {
|
||||
proxy_no_cache 1;
|
||||
if ($test) {
|
||||
return 403;
|
||||
}
|
||||
limit_req zone=websocket burst=5;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
|
||||
|
@ -131,6 +116,13 @@ location /api/auth {
|
|||
proxy_pass http://$ppfun$request_uri;
|
||||
}
|
||||
|
||||
location /api/captcha {
|
||||
proxy_no_cache 1;
|
||||
limit_req zone=general burst=10 nodelay;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_pass http://$ppfun$request_uri;
|
||||
}
|
||||
|
||||
location /moderation {
|
||||
autoindex on;
|
||||
expires 15m;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# for letsencrypt certbot webroot
|
||||
# very handy for setting a common webroot for certbot only
|
||||
location /.well-known/acme-challenge {
|
||||
root /home/pixelpla/certbotroot;
|
||||
}
|
||||
|
|
|
@ -1,63 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Rebuild and Restert pixelplanet
|
||||
|
||||
#folder for building the canvas (the git repository will get checkout there and the canvas will get buil thtere)
|
||||
BUILDDIR="/home/pixelpla/pixelplanet-build"
|
||||
#folder for dev canvas
|
||||
DEVFOLDER="/home/pixelpla/pixelplanet-dev"
|
||||
#folder for production canvas
|
||||
PFOLDER="/home/pixelpla/pixelplanet"
|
||||
#which branch to use
|
||||
BRANCH="master"
|
||||
|
||||
should_reinstall () {
|
||||
local TMPFILE="${BUILDDIR}/package.json.${1}.tmp"
|
||||
local NODEDIR="${BUILDDIR}/node_modules"
|
||||
local ORFILE="${BUILDDIR}/package.json"
|
||||
[ -f "${TMPFILE}" ] && [ -d "${NODEDIR}" ] && diff -q "${TMPFILE}" "${ORFILE}" && {
|
||||
echo "package.json stil the same, no need to rerun npm install."
|
||||
return 1
|
||||
}
|
||||
cp "${ORFILE}" "${TMPFILE}"
|
||||
echo "package.json changed, need to run npm install."
|
||||
return 0
|
||||
}
|
||||
|
||||
npm_reinstall () {
|
||||
rm -rf node_modules
|
||||
rm package-lock.json
|
||||
npm install
|
||||
}
|
||||
|
||||
copy () {
|
||||
local TARGETDIR="${1}"
|
||||
local REINSTALL="${2}"
|
||||
cp -r "${BUILDDIR}"/dist/*.js "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/workers "${TARGETDIR}/"
|
||||
rm -rf "${TARGETDIR}/public/assets"
|
||||
cp -r "${BUILDDIR}"/dist/public "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/captchaFonts "${TARGETDIR}/"
|
||||
cp -r "${BUILDDIR}"/dist/package.json "${TARGETDIR}/"
|
||||
mkdir -p "${TARGETDIR}/log"
|
||||
cd "${TARGETDIR}"
|
||||
[ ${REINSTALL} -eq 0 ] && npm_reinstall
|
||||
cd -
|
||||
}
|
||||
|
||||
cd "$BUILDDIR"
|
||||
GIT_WORK_TREE="$BUILDDIR" GIT_DIR="${BUILDDIR}/.git" git fetch --all
|
||||
echo "---UPDATING REPO ON PRODUCTION SERVER---"
|
||||
GIT_WORK_TREE="$BUILDDIR" GIT_DIR="${BUILDDIR}/.git" git reset --hard "origin/${BRANCH}"
|
||||
echo "---BUILDING pixelplanet---"
|
||||
should_reinstall master
|
||||
DO_REINSTALL=$?
|
||||
[ $DO_REINSTALL -eq 0 ] && npm_reinstall
|
||||
npm run build
|
||||
echo "---RESTARTING CANVAS---"
|
||||
cp dist/canvases.json ~/
|
||||
cd "$PFOLDER"
|
||||
pm2 stop ppfun-backups
|
||||
pm2 stop ecosystem.config.js
|
||||
copy "${PFOLDER}" "${DO_REINSTALL}"
|
||||
pm2 start ecosystem-backup.yml
|
||||
pm2 start ecosystem.config.js
|
|
@ -6,8 +6,6 @@ Translation files can be created out of the templates [template.pot](https://git
|
|||
|
||||
All translated languages get an own chat channel that just people who use this language can access.
|
||||
|
||||
If a language code differs from the country code of a wanted flag, it can be defined in the ssr filename, like `ssr-en-gb.po` would be the english language, with the flag of Great Britain.
|
||||
|
||||
## With poedit
|
||||
|
||||
### Create new translation
|
||||
|
|
1570
i18n/be.po
|
@ -922,7 +922,7 @@ msgid "Register"
|
|||
msgstr "Registra't"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:63
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Píxels col·locats avui"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:67
|
||||
|
|
1567
i18n/cz.po
1570
i18n/da.po
|
@ -371,7 +371,7 @@ msgid "Send"
|
|||
msgstr "Senden"
|
||||
|
||||
#: src/components/BanInfo.jsx:67
|
||||
msgid "You are banned. You think it is unjustified? Check out the "
|
||||
msgid "You are banned. You think it is unjustifed? Check out the "
|
||||
msgstr ""
|
||||
"Du bist verbannt. Wenn du glaubst, dass dies ein Irrtum war, sehe in die "
|
||||
|
||||
|
@ -1001,7 +1001,7 @@ msgid "Register"
|
|||
msgstr "Registrieren"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:62
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Heutige Pixel"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:66
|
||||
|
|
|
@ -605,7 +605,7 @@ msgid "LogIn"
|
|||
msgstr ""
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
|
@ -722,7 +722,7 @@ msgid "Ranking updates every 5 min. Daily rankings get reset at midnight UTC."
|
|||
msgstr "Rangigas ĉiu 5 minutoj. Hodiaŭa rangojn nuligas je meznokto UTC."
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Hodiaŭa Metitaj Pikseloj"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
|
@ -742,7 +742,7 @@ msgstr ""
|
|||
"la medianoche UTC."
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Píxeles Colocados Hoy"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
1572
i18n/fa.po
|
@ -835,7 +835,7 @@ msgstr "Le nom doit avoir moins de 26 caractères"
|
|||
|
||||
#: src/utils/validation.js:39
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Le nom contient un caractère non valide comme @, /, \\ ou #"
|
||||
msgstr "Le nom contient un caractère non valide comme @, /, \\ ou $"
|
||||
|
||||
#: src/utils/validation.js:54
|
||||
msgid "No password given."
|
||||
|
@ -975,7 +975,7 @@ msgstr ""
|
|||
"recommence à minuit TUC."
|
||||
|
||||
#: src/components/UserAreaContent.jsx:63
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Pixels placés aujourd'hui"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:67
|
||||
|
|
1575
i18n/ge.po
1598
i18n/gr.po
1447
i18n/hr.po
1792
i18n/hu.po
|
@ -652,7 +652,7 @@ msgid "You must be logged in to chat"
|
|||
msgstr "Դուք պետք է մուտք գործեք զրուցելու համար"
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Այսօր տեղադրված պիքսելներ"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
1574
i18n/it.po
1565
i18n/kk.po
1584
i18n/nl.po
|
@ -712,7 +712,7 @@ msgid "LogIn"
|
|||
msgstr "Бацу"
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Абонон Равæрды Пикселтæ"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
|
@ -672,7 +672,7 @@ msgid "LogIn"
|
|||
msgstr "Entrar"
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Píxeis colocados hoje"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
1576
i18n/ro.po
1327
i18n/ru.po
467
i18n/sc.po
|
@ -1,467 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: sicilian\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
|
||||
"X-Generator: Poedit 3.3.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Umpo mannari messaggia cu li proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "U to paisi esti bannatu temporaniaminti ri stu canali"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Si bannatu pi ssempri, trasi nalu guilded pi appellari"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Si bannatu"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "U to provider ri l'internet esti bannatu"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Si mutatu pi n'avutri ${ timeMin } minuta"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Si mutatu pi n'avutri ${ ttl } sicunna"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Sta mannannu messaggia troppu veloci, asspittari ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Unna a accessu a stu canali"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "A to email ava a essiri verificata pi parrari intra a chat"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Umpo mannari messaggia accussi longa"
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Piffauri usa a chat int"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Abbasta affunnari."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Mannasti na password vacanti o data mmlira"
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "U link pi ressettari a password unne chiu validu"
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Li password un cuncirunu"
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "St'utenti unnisisti nalu database"
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Password canciata."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Url mmaliru,piffauri talia l'email arre..."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "U globo 3d ri tutta a mappa"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Ammacca rui voti nalu globo pi iri in arre."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Caricannu..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PopUp ri PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Piazza pixel culurata intra na mappa a stili canvas cu avutri chistiana"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "A email umpo essiri vacanti."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "A email ava aviri aimmenu 5 carattera."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "A Email umpo aviri chiu ri 40 carattera."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "A Email ava aviri un puntu"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "A Email ava aviri na @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "U numi un po essiri vacanti."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "U numi ava essiri longa aimmenu ri rui carattera"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "U numi ava essiri chiu cuirtu ri vintisei carattera"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "U numi avi carattera invalida a tipo @, /, \\ o #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Password un rata."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "A Password ava a essiri aimmenu ri 6 carattera."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "A Password unpo aviri chiu ri 60 carattera."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Reset rila password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Resetta a password ca"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Resetta a password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Ammacca ca"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "va arre su Pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Salutamu ${ name }, po canciari a password ca."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Cunfirma a nova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Cunfirma"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Unsi loggatu"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Unna u pirmissu pi trasiri intra sta pagina"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Sulu li admin ponnu fari chistu"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Unsi bannatu"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Unsi mancu loggatu."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Erruri rilu server quannu loggasti fora."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Verifica pi email"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Si verificatu"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"U To codici pi verificarti j'e mmalidu o scarutu ;(, piffauri richiedi "
|
||||
"navutru."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Stu provider rila email unne valiru"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha un ratu"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "E-Mail gia usata."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Username gia pigghiatu."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Ci mittisti troppu assa, prova arre."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Rixi morto Fallisti u captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Errori rilu captcha sconosciutu"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Falli a criari un novu utenti"
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Falli a fari na sissiuni ropu a registazioni :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Unsi autenticatu."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Password sbagliata!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Account ri PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Veni mannatu nala paggina automaticamente 'n 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "O ${ clickHere } Pi gghiri arre su pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Terra"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Luna"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Canvas"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"U Canvas principali, na mappa ranni ri tuttu u munnu. Piazza unne ghie ca ti "
|
||||
"piaci"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Canvas rila luna. spaziu sicuru pi li arti. Nenti banneri ne scritti rossi "
|
||||
"(Aimmenu sa un fannu parti rilu disegnu) ne arti chiu ranni ri 1.5k x 1.5k "
|
||||
"pixels."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Piazza Voxels intra 'n canvas 3D cu l'avutri"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Canvas spiciali pi diffunniri a consapevolizza sulu SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Specchiu ri PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Specchiu ri PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Canvas 'n viancu j'e' nivuru"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"U canvas sulu pili iucatura chiu attiva d'aeri. Aggiurnamenti a 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Binvinutu ${ name } na pixelplanet, piffauri verifica a to email"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Salutamu ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"binvinuto nala community ri niavutri pixelplacers, usa u to account, "
|
||||
"virifica a to email, u po fari ca: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Ammacca pi Verificariti"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "O copia stu url:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Addivertiti j'e' un esitari a contattarici si viri quacchi problema :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Razi"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Mannamu gia n' email pi a verifica' ni po arrichiediri navutra fra "
|
||||
"${ minLeft } minuta."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Addimenticasti a to password? arrichiedini navutra ca"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Salutamu"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr "Arrichieristi navutra password, a po canciari tra navutri 30 minuta "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Si un arrichieristi sti email, ignorala (U ip ca arrichidi sti email esti "
|
||||
"${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "A Littra unne configurata nalu server"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Ti mannamu gia' na littra culi istruziuni. Aspittassi n'anticchia pi farini "
|
||||
"mannari navutra."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Unputimu attruvari a to email nalu database"
|
|
@ -737,7 +737,7 @@ msgstr ""
|
|||
"noči UTC."
|
||||
|
||||
#: src/components/UserArea.jsx:57
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Danes Postavljeni Pixli"
|
||||
|
||||
#: src/components/UserArea.jsx:61
|
||||
|
|
|
@ -344,7 +344,7 @@ msgid "Canvas Archive"
|
|||
msgstr "Arhiva kanvasa"
|
||||
|
||||
#: src/components/BanInfo.jsx:67
|
||||
msgid "You are banned. You think it is unjustified? Check out the "
|
||||
msgid "You are banned. You think it is unjustifed? Check out the "
|
||||
msgstr "Banovani ste. Da li mislite da ovo nije fer? Pogledajte"
|
||||
|
||||
#: src/components/BanInfo.jsx:77
|
||||
|
@ -983,7 +983,7 @@ msgid "Register"
|
|||
msgstr "Registruj se"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:62
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr "Današnji postavljeni pikseli"
|
||||
|
||||
#: src/components/UserAreaContent.jsx:66
|
||||
|
|
472
i18n/ssr-az.po
|
@ -1,472 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: az\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Proxylə chata mesaj atabilməzsiniz"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Sİzin ölkəniz bu söhbət kanalından keçici olaraq susturulub"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr "Daimi olaraq susturuldun,qaldırtmaq üçün guilded serverinə qatıl"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Sən banlandın"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Sənin İnternet Provayderin banlandı"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "${ timeMin } dəqiqəliyinə susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "${ ttl } saniyəliyinə susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Çox tez mesaj göndərirsən, ${ waitTime } saniyə gözləmən lazımdır :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Sənin bu kanala ərişimin yoxdur"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Doğrulanan bir emailin olmadan söhbət eliyəbilməzsən"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Bu qədər uzun bir mesaj göndərəbilməzsən :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Zəhmət olmasa int kanalından istifadə edin"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Floodlamayı burax."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Boş bir parol göndərdin vəya keçərsiz data :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Parol dəyişdirmə bağlantısı artıq keçərli deyil :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Parolların birbirinə uymur :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Istifadəçi databazamızda mövcud deyil :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Parolunuz uğurla dəyişdirildi."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Keçərsiz bağlantı :( Zəhmət olmasa emailinizi yenidən yoxlayın."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobus"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Bütün xəritəmizin 3D globusu"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Globusa iki dəfə basaraq geri dön."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Yüklənir..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Digər oyunçularla biryerdə fərqli lövhələrdə fərqli rənglərdə pixellər atın"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Email boş olabilməz."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Email ən az 5 simvol uzunluğunda olmalıdır."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Email 40 simvoldan uzun olabilməz."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Email ən az 1 nöqtə içərməlidir."
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Emaildə @ işarəsi olmaldır"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Ad boş olabilməz."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Ad ən az 2 simvol uzunluğunda olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Ad 26 simvoldan qısa olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Ad keçərsiz simvol içərir, məsəlan @, /, \\ vəya #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Heçbir şifrə verilmədi."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Parol ən az 6 simvol uzunluğunda olmalıdır."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Parol 60 simvoldan qısa olmalıdır."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Parol Sıfırlama"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Parolunuzu burdan sıfırlayın"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Parolu Sıfırla"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Bura basın"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "pixelplanetə qayıtmaq üçün"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Salam ${ name }, yeni parolunu burdan ayarlayabilərsən:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Yeni Parol"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Yeni Parolu Doğrulayın"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "təqdim edin"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Siz daxil olmamısınız"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Sizin bu səhifəyi görüntüləməyə icazəniz yoxdur"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Sadəcə adminlər bunu edəbilər"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Sən banlı deyilsən"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Bu email provayderinə icazə verilmir"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha mətni verilməyib"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Email artıq istifadə olunur."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Ad artıq istifadə olunur."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Bu çox vaxt aldı,təkrar yoxla."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Captchayı səhv girdin"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Naməlum Captcha Xətası"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Yeni istifadəçi yaradılamadı :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Hesab oluşdurulurkən bir xəta meydana gəldi :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Siz heç daxil olmamasınız bilə."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Çıxış zamanı server xətası."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Kimliyiniz doğrulanamadı."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Səhv Parol!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Email doğrulaması"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Artıq hesabın doğrulandı :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Doğrulama kodun keçərsiz vəya sürəsi dolub :(,Zəhmət olmasa yeni bir tələbdə "
|
||||
"bulun."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Hesabları"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "15 saniyə sonra avtomatik olaraq yönləndiriləcəksən"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Vəya Pixelplanetə qayıtmaq üçün bura basın ${ clickHere }"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Dünya"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Ay"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Lövhə"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Koronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Bizim əsas lövhəmiz,dünyanın böyük bir dünya xəritəsi.İstədiyiniz yerə pixel "
|
||||
"qoyun"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Ay lövhəsi.Rəsmlər üçün təhlükəsiz yerdir.Bayraqlar vəya böyük "
|
||||
"yazılar(əsərin parçası deyilsə) vəya 1.5k x 1.5k pixeldən oluşan əsərlər "
|
||||
"qadağandır."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr " başqaları ilə birlikdə 3D lövhə üzərinə kub pixellər yerləşdirin"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "SARS-CoV2 haqqında məlumatlılığı yaymaq üçün xüsusi lövhə"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "PixelZone'nin aynası"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "PixelCanvas'ın aynası"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Ağ-Qara Lövhə"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Əvvəlki günün ən aktiv oyunçuları üçün lövhə. Gündəlik reytinq yeniləmələri "
|
||||
"00:00 UTC'də həyata keçirilir."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "PixelPlanetə xoş gəldin ${ name },Zəhmət olmasa emailini doğrula"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Salam ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"kiçik pixelplacers icmamıza xoş gəlmisiniz, hesabınızdan istifadə etmək üçün "
|
||||
"emailinizi doğrulamalısınız. Bunu burada edə bilərsiniz:"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Doğrulamaq üçün basın"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Və ya aşağıdakı url-ni kopyalayaraq:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Əylənin və hər hansı bir problemlə qarşılaşsanız, bizimlə əlaqə saxlamaqdan "
|
||||
"çəkinməyin :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Təşəkkürlər"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Artıq sizə doğrulama emaili göndərmişik, ${ minLeft } dəqiqə ərzində başqa "
|
||||
"doğrulama emaili tələb edə bilərsiniz."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "PixelPlanet üçün parolunuzu unutmusunuz? Burada yenisini əldə edin"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Salam"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Siz yeni parol əldə etməyi tələb etdiniz. Növbəti 30 dəqiqə ərzində "
|
||||
"parolunuzu burada dəyişə bilərsiniz:"
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Əgər siz bu emaili tələb etməmisinizsə, lütfən, onu vecinizə almayın (bu "
|
||||
"emaili tələb edən IP ${ ip } idi)."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Email serverdə konfiqurasiya edilməyib"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Artıq sizə təlimatlarla bir email göndərmişik. Lütfən, başqa email tələb "
|
||||
"etməzdən əvvəl gözləyin."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Bu emaili databazamızda tapabilmədik"
|
|
@ -1,476 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: be\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr ""
|
||||
"Вы не можаце адпраўляць паведамленні ў чаце, пакуль у вас уклячана проксі"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Ваша краіна часова прыглушана ў гэтым канале чата"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr ""
|
||||
"Вы прыглушаны назаўжды, далучыцеся да нашага Guilded, каб падаць апеляцыю"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Вы забанены"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Ваш інтэрнэт-правайдэр забанены"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Вы прыглушаны яшчэ на ${ timeMin } хвілін"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Вы прыглушаны яшчэ на ${ ttl } секунд"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Вы дасылаеце паведамленні занадта хутка, вам прыйдзецца пачакаць "
|
||||
"${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Вы не маеце доступу да гэтага канала"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Ваша пошта павінна быць верыфікаванай, каб вы маглі карыстацца чатам"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Вы не можаце даслаць такое доўгае паведамленне :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Калі ласка, карыстайцеся інтэрнацыянальным чатам (int)"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Не флудзіце."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Вы даслалі пусты пароль або няправільныя дадзеныя :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Гэтая спасылка для скідання паролю больш не працуе :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Вашыя паролі не супадаюць :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Такога карыстальніка не існуе :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Пароль паспяхова зменены."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Няправільны URL :( Калі ласка, праверце сваю пошту яшчэ раз."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3D Глобус"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D Глобус усёй нашай мапы"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Каб вярнуцца, двойчы націсніце па глобусу."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Загрузка..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ппфан"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "Усплывальнае акно PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Стаўце рознакаляровыя пікселі на палатне ў выглядзе мапы свету анлайн, разам "
|
||||
"з іншымі гульцамі"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Пошта не можа быць пустой."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Даўжыня адрасу эл. пошты мае быць не менш за 5 сімвалаў."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Даўжыня адрасу пошты мае быць не больш за 40 сімвалаў."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Адрас пошты павінен мець прынамсі адну кропку"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Адрас пошты павінен мець @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Імя не можа быць пустым."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Даўжыня імя мае быць не менш за 2 сімвалы"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Даўжыня імя мае быць менш за 26 сімвалаў"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Імя мае недапушчальны сімвал, такі як @, /, \\ ці #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Пароль адсутнічае."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Даўжыня паролю мае быць не менш за 6 сімвалаў."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Даўжыня паролю мае быць менш за 60 сімвалаў."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Скіданне паролю PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Скінуць свой пароль"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Скінуць пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Націсніце тут"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "каб вярнуцца да pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Вітаем, ${ name }, вы можаце ўвесці свой новы пароль:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Новы пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Пацвярдзіце новы пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Даслаць"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Вы не ўвайшлі ў акаўнт"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Вам нельга захадзіць на гэтую старонку"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Толькі адміністратары могуць гэта рабіць"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Вы не забанены"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Гэты email-правайдэр забанены"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Капча адсутнічае"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Гэтая пошта ўжо выкарыстоўваецца."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Гэтае імя ўжо выкарыстоўваецца."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Вам спатрэбілася занадта многа часу, паспрабуйце яшчэ раз."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Вы правалілі сваю капчу"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Невядомая памылка капчы"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Не атрымалася стварыць новага карыстальніка :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Не атрымалася стварыць сэсію пасля рэгістрацыі :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Вы нават не ўвайшлі ў акаўнт."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Памылка сервера пры выхадзе з акаўнту."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Вы не аўтарызаваны."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Няправільны пароль!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Спраўджанне пошты"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Цяпер вы спраўджаны :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Ваш код спраўджання пошты няправільны або ужо не працуе :(, калі ласка, "
|
||||
"запытайце новы."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Акаўнты PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Вы будзеце аўтаматычна перанакіраваныя праз 15с"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Альбо ${ clickHere } каб вярнуцца да pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Зямля"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Луна"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D палатно"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Каранавірус"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1-біт"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Топ 10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Наша галоўнае палатно, вялізарная мапа свету. Стаўце пікселі дзе заўгодна"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Палатно Луна. Бяспечнае месца для малюнкаў. Ніякіх сцягаў ці вялікага тэксту "
|
||||
"(калі гэта ня частка малюнку), ці малюнкаў больш за 1.5k x 1.5k пікселяў."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Стаўце вокселі на 3D палатне разам з іншымі"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Асаблівае палатно, прызванае распаўсюджваць дасведчанасць аб SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Люстэрка PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Люстэрка PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Ч/Б палатно"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Палатно для найбольш актыўных гульцоў апошняга дня. Спіс аднаўляецца кожны "
|
||||
"дзень у 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "Вітаем у PixelPlanet, ${ name }, калі ласка, спраўдзіце сваю пошту"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Вітаем, ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"запрашаем да нашай суполцы піксельных гульцоў. Каб выкарыстоўваць свой "
|
||||
"акаўнт, вы павінны спраўдзіць сваю пошту. Вы можаце зрабіць гэта тут: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Націсніце, каб спраўдзіць"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Або скапіяваўшы гэты URL:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Весяліцеся і не бойцеся пісаць нам, калі ў вас будуць якія-небудзь "
|
||||
"праблемы :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Дзякуй"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Мы ўжо даслалі вам пісьмо аб спраўджанні. Вы можаце запрасіць яшчэ адзін "
|
||||
"праз ${ minLeft } хвілін."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Вы забыліся на ваш пароль ад PixelPlanet? Атрымайце новы тут"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Вітаем"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Вы запрасілі атрымаць новы пароль. Вы можаце змяніць свой пароль на працягу "
|
||||
"30 хвілін тут: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Калі вы не запрашалі гэтага пісьма, калі ласка, проста ігнаруйце яго ( IP, "
|
||||
"які запрасіў гэты ліст - ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Пошта не наладжана на серверы"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Мы ўжо даслалі вам пісьмо з інструкцыямі. Калі ласка, пачакайце перад тым, "
|
||||
"як запрасіць яшчэ адно."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Не можам знайсці такую пошту ў нашай базе дадзеных"
|
|
@ -30,7 +30,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "El teu correu electrònic ha de ser verificat per poder xatejar"
|
||||
|
||||
#: src/core/ChatProvider.js:366
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Estàs permanentment silenciat, uneix-te al nostre Guilded per apel·lar el "
|
||||
"mute"
|
||||
|
@ -81,7 +81,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "L'usuari no existeix a la nostra base de dades :("
|
||||
|
||||
#: src/routes/reset_password.js:90
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "La contrasenya s'ha canviat exitosament."
|
||||
|
||||
#: src/routes/reset_password.js:109
|
||||
|
@ -133,7 +133,7 @@ msgstr ""
|
|||
"ne un altre en ${ minLeft } minuts."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"Benvingut ${ name } a PixelPlanet, si us plau verifica el teu correu "
|
||||
"electrònic"
|
||||
|
@ -162,7 +162,7 @@ msgstr "O copiant la següent URL:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Diverteix-te i no dubtis de contactar amb nosaltres si tens cap problema :)"
|
||||
|
466
i18n/ssr-cz.po
|
@ -1,466 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: cs_CZ\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n>=2 && n<=4 ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.3.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Nemůžeš posílat zprávy s proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Tvůj stát je prozatím mutelej z tohodle chat kanálů"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Jseš permanentně mutelej, připoj se na náš guilded aby sis mohl appealnout "
|
||||
"mute"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Jsi zabanován"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Tvůj poskytovatel internetu je zabanován"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Jseš mutelej na dalších ${ timeMin } minut"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Jseš mutelej na dalších ${ ttl } sekund"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Posíláš zprávy příliš rychlo, musíš počkat ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Nemáš přístup na tenhle kanál"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Tvůj email musí bejt ověřen aby ses mohl bavit"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Nemůžeš posílat zprávy takhle dlouhý :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Prosím použíj int kanál"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Přestaň spamovat."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Si poslal prázdné heslo nebo chybný data :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Tohle heslo-resetující odkaz už je neplatný :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Tvoje hesla nejsou stejná :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Uživatelské jméno neexistuje v naší database :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Heslo úspěšně změněno."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Neplatný URL :( Prosím zkontroluj svůj mail zase."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D mapa naší celej mapy"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Dvakrát klikní na globus aby si šel zpátky"
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Načítaní..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Polož barevné pixely na mapově stylované plátno s ostatníma online hráčema"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Email nemůže bejt prázdnej"
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Email musí obsahovat 5 znaků."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Email nemůže být delší jak 40 znaků"
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Email musí obsahovat tečku"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Email musí obsahovat @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Jméno nemůže být prázdný"
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Jméno musí mít aspoň 2 znaky."
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Jméno musí být kratší jak 26 znaků"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Jméno obsahuje chybné znaky jako @, /, \\ or #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Nebylo zadané heslo"
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Heslo musí obsahovat aspoň 6 znaků."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Heslo musí být kratší jak 60 znaků."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Heslo reset"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Resetuj si heslo tu"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Resetovat Heslo"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Klikni tu"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "aby si šel zpátky na pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Ahoj ${ name }, můžeš si nastavit svoje nové heslo tady:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nový heslo"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Potvrdit Nový Heslo"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Potvrdit"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Nejsi přihlášenej"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Nejste povolen na tuhle stránků"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Pouze admini to můžou dělat"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Nejste zabanován"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Nejste ani přihlášen"
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Serverová chyba při odhlašování"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Ověřování mailu"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Od teď jste ověřen"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Váš mailovej ověřující kód je již neplatný :(, prosím poproste o novej."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Tenhle email dodavatel tu není povolen"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Žádná captcha zadaná"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "E-mail je už používán"
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Jméno je už používáno"
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Trvalo vám to až moc dlouho, zkuste znovu."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Nepodařila se vám vaše captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Neznáma chyba captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Nepodařilo se udělat nového uživatele :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Nepodařilo se vytvořit schůzi hned po registraci :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Nejste ověřený"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Nesprávné heslo!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun účty"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Budete automaticky přesměrováný po 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Nebo ${ clickHere } aby ses dostal zpátky na pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Zem"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Měsíc"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Plátno"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "Pixelzone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Naše hlavní plátno, velká mapa země. Pokládejte kde chcete"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Plátno měsíce. Bezpečný místo pro obrazy. Žádné vlajky nebo velký texty "
|
||||
"(pouze jestli to není část obrazu) nebo obrazy větší jak 1,5k x 1,5k pixelu."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Polož Voxely na 3D plátno s ostatníma"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Speciální plátno pro zvýšení pozornosti o SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Zrcadlo PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Zrcadlo PixelCanvasu"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Černo-Bíle plátno"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Plátno pro nejvíc aktivní hráče ze včerejška. Denní hodnocení se aktualizuje "
|
||||
"v 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Vítej ${ name } na PixelPlanet, prosím ověř svůj mail"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Ahoj ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"vítej na naší malou komunitu pixelplacerů, pro použití tvého účtu, musíš si "
|
||||
"ověřit mail. Můžeš to udělat zde:"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Klikni pro ověření"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Nebo zkopírůj tohle URL:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Měj zábavů a neboj se nás kontaktovat jestli najdeš nějaký problémy :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Dík"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Už jsme vám poslali ověřující email, můžeš poprosit o novej za ${ minLeft } "
|
||||
"minut"
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Zapomenul sis heslo na PixelPlanet? Získej nový tady"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Ahoj"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr "Požádal si o nový heslo. Můžeš si změnit heslo v rámci 30 minut tady:"
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Jestli si o tenhle email nepožadoval, prosím to ignoruj (ip které o tenhle "
|
||||
"mail požadoval je ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Mail není konfigurován na servru"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Už jsme vám poslali mail s instrukcemi. Prosím počkej než budete požádat o "
|
||||
"další mail."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Nemohli jsme najít tenhle mail v naší database"
|
|
@ -1,471 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: da\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Du kan ikke sende chat beskeder med proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Dit land er midlertidigt gjort stum i denne chat kanal"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr ""
|
||||
"Du er permanent gjort stum, Tilslut dig til vores Guilded for at appellere "
|
||||
"om at du blev gjort stum"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Du er bannet"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Din Internetudbyder er bannet"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Du er gjort stum for en anden ${ timeMin } minutes"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Du er gjort stum for en anden ${ ttl } Sekunder"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Du sender beskeder for hurtigt, du skal vente ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Du har ikke tilladelse til at se denne kanal"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Din mail skal være bekræftet for at chatte"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Du kan ikke sende en besked så lang :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Venligst brug int kanal"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Lad være med at oversvømme chatten."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Du sendte en tom adgangskode eller ugyldig data :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Dette adgangskode-nulstillings link er ikke længere gyldig :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Dine adgangskoder matcher ikke :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Bruger eksisterer ikke i vores database :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Adgangskode blev succesfuldt ændret."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Ugyldig url :( Venligst tjek din mail igen."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobus"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "En 3D klode af hele vores kort"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Dobbeltklik på kloden for at gå tilbage."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Indlæser..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Placer farvede pixels på et kort-stilet kanvas med andre spillere online"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Email må ikke være tom."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Email skal være mindst 5 tegn lang."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Email kan ikke være længere end 40 tegn."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Email skal indeholde i det mindste én prik"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Email skal indeholde et @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Navn kan ikke være tomt."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Navn skal være mindst 2 tegn langt"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Navn skal være kortere end 26 tegn"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Navn indeholder ugyldige tegn f.eks. @, /, \\ eller #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Ingen adgangskode angivet."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Adgangskode skal være mindst 6 tegn lang."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Adgangskode skal være kortere end 60 tegn."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Adgangskode Nulstilling"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Nulstil din adgangskode her"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Nulstil Adgangskode"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Klik her"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "for at gå tilbage til pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Hej ${ name }, du kan skrive din nye adgangskode her:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nye adgangskode"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Bekræft Nye Adgangskode"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Indsend"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Du er ikke logget ind"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Du er ikke tilladt til at få adgang til denne side"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Kun administratorer kan gøre det"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Du er ikke bannet"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Denne email udbyder er ikke tilladt"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Ingen Captcha angivet"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "E-Mail allerede i brug."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Brugernavn allerede i brug."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Du tog for lang tid, prøv igen."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Du fejlede din captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Ukendt Captcha Fejl"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Kunne ikke oprette ny bruger :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Kunne ikke oprette session efter registrering :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Du er engang logget in."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Server fejl ved log ud."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Du er ikke godkendt."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Forkerte adgangskode!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Mail Bekræftelse"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Du er nu bekræftet"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Din mail bekræftelseskode er ugyldig eller allerede udløbet :(, venligst "
|
||||
"anmod om en ny en."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Kontoer"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Du vil blive automatisk omdirigeret efter 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Eller ${ clickHere } for at gå tilbage til pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Jorden"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Måne"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Kanvas"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Koronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelKanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Vores hovedkanvas, et kæmpe verdenskort. Placer hvor end du vil"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Måne kanvas. Sikkert sted for kunst. Ingen flager eller stor text (undtagen "
|
||||
"hvis del af kunst) eller større end 1,5k x 1,5k pixels."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Placer Voxels på et 3D kanvas med andre"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Specielt kanvas for at sprede viden om SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Spejl af PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Spejl af Pixelcanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Sort og hvid kanvas"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Et kanvas for de mest aktive spillere fra den tidligere dag. Daglig "
|
||||
"rangering opdaterer kl. 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "Velkommen ${ name } til PixelPlanet, venligst bekræft din mail"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Hej ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"velkommen til vores lille samfund of pixelplacere, for at bruge din konto, "
|
||||
"har du brug for at bekræfte din mail. Du kan gøre det her: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Klik for at Bekræfte"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Eller ved at kopiere følgende url:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Hav' det sjovt og tøv ikke med at kontakte os hvis du støder på nogle "
|
||||
"problemer :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Tak"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Vi har allerede sendt dig en bekræftelsesmail, du kan anmode om endnu en om "
|
||||
"${ minLeft } minutter."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Glemt din adgangskode for PixelPlanet? Få en ny en her"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Hello"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Du anmodet om en ny adgangskode. Du kan ændre din adgangskode inden for de "
|
||||
"næste 30min her: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Hvis du ikke anmodet om denne mail, venligst bare ignorerer den (ip'en der "
|
||||
"anmodet om denne mail var ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Mail er ikke konfigureret på serveren"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Vi har allerede sendt dig en mail med instruktioner. Venligst vent før du "
|
||||
"anmoder om en ny mail."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Kunne ikke finde denne mail i vores database"
|
|
@ -42,7 +42,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "E-Mail muss verifiziert sein um Nachrichten zu senden"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Du bsit permanent stummgeschaltet, gehe zu unser guilded um dagegen "
|
||||
"einzusprechen"
|
||||
|
@ -93,7 +93,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Spieler existiert nicht in unserer Datenbank :("
|
||||
|
||||
#: src/routes/reset_password.js:87
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Passwort erfolgreich geändert."
|
||||
|
||||
#: src/routes/reset_password.js:106
|
||||
|
@ -142,7 +142,7 @@ msgstr ""
|
|||
"in ${ minLeft } minuten anfordern."
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"Willkommen ${ name } auf PixelPlanet, bitte verifiziere deine Mail Adresse"
|
||||
|
||||
|
@ -170,7 +170,7 @@ msgstr "Oder kopiere den folgenden Link:"
|
|||
|
||||
#: src/core/mail.js:81
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Viel Spaß und scheue dich nicht uns zu kontaktieren, falls du Probleme "
|
||||
"hast :)"
|
||||
|
|
|
@ -34,7 +34,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Vian retpostadreson devas esti verigita por babili"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Vi estas silentata senfine, eniru je l' guilded por malfari ĝi"
|
||||
|
||||
#: src/core/ChatProvider.js:336
|
||||
|
@ -107,7 +107,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Uzanto ne ekzistas ŭwŭ"
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Pasvorton Malerare Ŝanĝita."
|
||||
|
||||
#: src/routes/reset_password.js:127
|
||||
|
@ -132,7 +132,7 @@ msgstr ""
|
|||
"en ${ minLeft } minutoj."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Bonvenon ${ name } to PixelPlanet, bonvolu verigi vian retpostadreson"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -158,7 +158,7 @@ msgstr "Aŭ kopianta la URL:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Amuziĝu kaj ne heziti kontakti nin se renkontus ajna problemojn ŭwŭ"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
|
|
|
@ -37,7 +37,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Tu correo tiene que ser verificado para poder chatear"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Estás silenciado permanentemente, únete a nuestro guilded para apelar"
|
||||
|
||||
#: src/core/ChatProvider.js:336
|
||||
|
@ -110,7 +110,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "El usuario no existe en la base de datos :("
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Contraseña cambiada exitosamente."
|
||||
|
||||
#: src/routes/reset_password.js:127
|
||||
|
@ -135,7 +135,7 @@ msgstr ""
|
|||
"${ minLeft } minutos."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Bienvenido a PixelPlanet ${ name }, por favor verifica tu correo"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -161,7 +161,7 @@ msgstr "O copiando la siguiente url:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Diviértete y no dudes en contactarnos si encuentras algún problema :)"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
|
|
|
@ -1,469 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: fa\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n==0 || n==1);\n"
|
||||
"X-Generator: Poedit 3.4\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "تو نمیتونی با فیلترشکن پیام بفرستی"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "کشور شما موقتاً از این کانال چت بیصدا شده است"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "شما برای همیشه بیصدا شدهاید، به گیلدد ما بپیوندید تا نادیده گرفته شود"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "بن شدی سید"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "ارائه دهنده اینترنت شما ممنوع شده است"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "شما برای ${ timeMin } دقیقه بی صدا شدین"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "شما برای ${ ttl } ثانیه بی صدا شدین"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "خیلی داری تند تند پیام میفرستی. باید ${ waitTime } صبر کنی"
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "تو به این کانال دسترسی نداری"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "برای چت کردن، ایمیل شما باید تأیید شود"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "نمیشه اینقدر پیام بدی :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "لطفا از کانال int استفاده کنید"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "اینقدر پیام نفرست."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "رمز خالی یا داده نامعتبر فرستادی :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "این password-reset دیگر معتبر نیست :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "رمزهای شما همخوانی ندارند :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "کاربر در پایگاه داده ما وجود ندارد :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "رمز عبور با موفقیت تغییر کرد."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "آدرس اینترنتی نامعتبر :( لطفا دوباره ایمیل خود را بررسی کنید."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "یک کره سه بعدی از کل نقشه ما"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "برای بازگشت بر روی globe دوبار کلیک کنید."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "بارگذاری..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr "پیکسلهای رنگی را روی بوم طرحدار نقشه با دیگر بازیکنان آنلاین قرار دهید"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "ایمیل نمی تواند خالی باشد."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "ایمیل باید حداقل 5 کاراکتر باشد."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "ایمیل نمی تواند بیشتر از 40 کاراکتر باشد."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "ایمیل حداقل باید حاوی یک نقطه باشد"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "ایمیل باید حاوی @ باشد"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "نام نمی تواند خالی باشد."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "نام باید حداقل 2 کاراکتر باشد"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "نام باید کمتر از 26 کاراکتر باشد"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "نام حاوی نویسه نامعتبر مانند @، /، \\ یا # است"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "رمز عبور داده نشده است."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "رمز عبور باید حداقل 6 کاراکتر باشد."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "رمز عبور باید کمتر از 60 کاراکتر باشد."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "تنظیم مجدد رمز عبور PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "رمز عبور خود را در اینجا بازنشانی کنید"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "بازنشانی رمز عبور"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "اینجا کلیک کنید"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "برای بازگشت به pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "سلام ${ name }، میتونی اینجا رمز جدیدت رو بزاری:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "رمز عبور جدید"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "رمز عبور جدید را تأیید کنید"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "ارسال"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "شما وارد نشده اید"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "شما اجازه دسترسی به این صفحه را ندارید"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "فقط ادمین ها میتونن این کار رو بکنن"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "تو بن نشدی"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "تو حتی وارد هم نشدی."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "خطای سرور هنگام خروج از سیستم."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "تایید ایمیل"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "الان تایید شدی :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"کد تأیید ایمیل شما نامعتبر است یا قبلاً منقضی شده است :(، لطفاً یک کد جدید "
|
||||
"درخواست کنید."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "این ارائه دهنده ایمیل مجاز نیست"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "کپچا داده نشده است"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "ایمیل در حال حاضر در حال استفاده است."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "نام کاربری در حال حاضر استفاده شده است."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "خیلی کار رو طولش دادی، دوباره امتحان کن."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "شما کپچای خود را اشتباه جواب دادین"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "کپچا یه خطایی داده که خودمم نمیدونم چیه"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "کاربر جدید ایجاد نشد :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "تشکیل جلسه پس از ثبت نام انجام نشد :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "شما احراز هویت نشده اید."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "رمزت رو غلط وارد کردی!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "حسابهای PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "پس از 15 ثانیه به طور خودکار هدایت می شوید"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "یا ${ clickHere } تا به پیکسل پلنت برگردی"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "زمین"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "ماه"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "بوم سه بعدی"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "ویروس کرونا"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "منطقه پیکسل"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "بوم پیکسل"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "یک بیت"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "ده نفر برتر"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"بوم اصلی ما، نقشه عظیمی از جهان است. هر جایی که دوست دارید پیکسل قرار دهید"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"بوم ماه. فضای امن برای هنر بدون پرچم یا متن بزرگ (مگر اینکه بخشی از هنر) یا "
|
||||
"هنری بزرگتر از 1.5k × 1.5k پیکسل باشد."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Voxels را روی بوم سه بعدی با دیگران قرار دهید"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "یک بوم مخصوص برای آگاهی رسانی درمورد ویروس کرونا"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "آینه منطقه پیکسل"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "آینه بوم پیکسل"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "بوم سیاه و سفید"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"بوم برای فعال ترین بازیکنان روز قبل. به روز رسانی رتبه بندی روزانه در ساعت "
|
||||
"00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "خوش اومدی آقای ${ name } به پیکسل پلنت. بی زحمت ایمیلت رو تایید کن"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "سلام ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"به pixelplacers خوش آمدید، برای استفاده از حساب خود، باید ایمیل خود را تأیید "
|
||||
"کنید. تو میتوانی آن کار را اینجا انجام بدی: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "برای تایید کلیک کنید"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "یا با کپی کردن آدرس زیر:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "لذت ببرید و در صورت بروز هرگونه مشکل با ما در ارتباط باشید :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "ممنون"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"ما قبلاً یک ایمیل تأیید برای شما ارسال کردهایم، میتوانید یک ایمیل دیگر را در "
|
||||
"${ minLeft }دقیقه دیگر درخواست کنید."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr ""
|
||||
"رمز عبور خود را برای PixelPlanet فراموش کرده اید؟ یک مورد جدید را از اینجا "
|
||||
"دریافت کنید"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "سلام"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"شما درخواست کرده اید که یک رمز عبور جدید دریافت کنید. می توانید رمز عبور خود "
|
||||
"را ظرف 30 دقیقه آینده در اینجا تغییر دهید: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"اگر شما این نامه را درخواست نکردید، لطفاً آن را نادیده بگیرید (IP درخواست "
|
||||
"کننده این نامه ${ ip } بود)."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "ایمیل روی سرور پیکربندی نشده است"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"ما قبلاً یک ایمیل با دستورالعمل برای شما ارسال کردیم. لطفاً قبل از درخواست "
|
||||
"ایمیل دیگری صبر کنید."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "این ایمیل در پایگاه داده ما یافت نشد"
|
|
@ -36,7 +36,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Votre adresse de courriel doit être vérifiée pour chatter"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Vous êtes mis en sourdine pour toujours, rejoignez notre guilded pour faire "
|
||||
"appel"
|
||||
|
@ -113,7 +113,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Cet utilisateur n'existe pas dans notre base de données :("
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Le mot de passe a été modifié avec succès."
|
||||
|
||||
#: src/routes/reset_password.js:127
|
||||
|
@ -139,7 +139,7 @@ msgstr ""
|
|||
"autre en ${ minLeft } minutes."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Bienvenue ${ name } à PixelPlanet, veuillez vérifier votre courriel"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -166,7 +166,7 @@ msgstr "Ou copiez l'adresse URL suivante :"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"S'amusez-vous bien et ne pas hésiter à nous contacter si vous rencontrez un "
|
||||
"problème :)"
|
||||
|
|
477
i18n/ssr-ge.po
|
@ -1,477 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ka\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.4.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "ვერ გაგზავნი მესიჯებს პროქსით"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "თქვენი ქვეყანა დამუდებული არის ამ ჩატიდან"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"თქვენ სამუდამოდ დადუმებული ხართ, შემოუერთდით ჩვენს გილდიას, რათა გაასაჩივროთ "
|
||||
"მუნჯი"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "აკრძალული ხარ. თქვენ ფიქრობთ, რომ ეს გაუმართლებელია? შეამოწმეთ"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "თქვენს ინტერნეტ პროვაიდერს აეკრძალა ამ თამაშის თამაში"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "თქვენ დადუმებული ხართ კიდევ $ {timeMin } წუთით"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "თქვენ დადუმებული ხართ კიდევ ${ ttl } წამით"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"თქვენ ძალიან სწრაფად აგზავნით შეტყობინებებს, უნდა დაელოდოთ ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "თქვენ არ გაქვთ წვდომა ამ არხზე"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "თქვენი ფოსტა უნდა დადასტურდეს ჩეთისთვის"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "ამდენ ხანს მესიჯს ვერ გაუგზავნი :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "გთხოვთ გამოიყენოთ int არხი"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "შეაჩერე ჩატის გასპამვა."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "თქვენ გაგზავნეთ ცარიელი პაროლი ან არასწორი მონაცემები :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "ეს პაროლის აღდგენის ბმული აღარ არის მოქმედი :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Თქვენი პაროლები არ ემთხვევა :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "მომხმარებელი არ არსებობს ჩვენს მონაცემთა ბაზაში :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "პაროლი წარმატებით შეიცვალა."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "არასწორი url :( გთხოვთ, ხელახლა შეამოწმოთ თქვენი ფოსტა."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "ჩვენი მთელი რუკის 3D გლობუსი"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "ორჯერ დააწკაპუნეთ გლობუსზე უკან დასაბრუნებლად."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Ჩატვირთვა..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"განათავსეთ ფერადი პიქსელები რუკის კანვასზე ტილოზე სხვა მოთამაშეებთან ერთად "
|
||||
"ონლაინ რეჟიმში"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "ელფოსტა არ შეიძლება იყოს ცარიელი."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "ელფოსტა უნდა იყოს მინიმუმ 5 სიმბოლო."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "ელფოსტა არ შეიძლება იყოს 40 სიმბოლოზე მეტი."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "ელფოსტა მინიმუმ წერტილს უნდა შეიცავდეს"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "ელფოსტა უნდა შეიცავდეს @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "სახელი არ შეიძლება იყოს ცარიელი."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "სახელი უნდა იყოს მინიმუმ 2 სიმბოლო"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "სახელი უნდა იყოს 26 სიმბოლოზე მოკლე"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "სახელი შეიცავს არასწორ სიმბოლოს, როგორიცაა @, /, \\ ან #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "პაროლი არ არის მოცემული."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "პაროლი უნდა იყოს მინიმუმ 6 სიმბოლო."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "პაროლი უნდა იყოს 60 სიმბოლოზე ნაკლები."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun პაროლის აღდგენა"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "გადააყენეთ თქვენი პაროლი აქ"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "პაროლის აღდგენა"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Დააკლიკე აქ"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "პიქსელ პლანეტაზე დასაბრუნებლად"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "გამარჯობა ${ name }, შეგიძლიათ დააყენოთ თქვენი ახალი პაროლი აქ:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "ახალი პაროლი"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Დაადასტურეთ ახალი პაროლი"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "გაგზავნა"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "თქვენ არ ხართ შესული"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "თქვენ არ გაქვთ უფლება შეხვიდეთ ამ გვერდზე"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "ამის გაკეთება მხოლოდ ადმინებს შეუძლიათ"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "არ ხარ აკრძალული"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "ელფოსტის ეს პროვაიდერი დაუშვებელია"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "კაპჩა არ არის მოცემული"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Ელექტრონული ფოსტა უკვე გამოყენებულია."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Მომხმარებლის სახელი უკვე გამოიყენება."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "ძალიან დიდი დრო დაგჭირდათ, ისევ სცადეთ."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "თქვენ ვერ მოახერხეთ თქვენი კაპტჩა"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "უცნობი კაპჩტას შეცდომა"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "ახალი მომხმარებლის შექმნა ვერ მოხერხდა :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "რეგისტრაციის შემდეგ სესიის დამყარება ვერ მოხერხდა :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "თქვენ არც კი ხართ შესული."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "სერვერის შეცდომა გამოსვლისას."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "თქვენ არ ხართ დამოწმებული."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Არასწორი პაროლი!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "ფოსტის გადამოწმება"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "ახლა დამოწმებული ხარ :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"თქვენი ფოსტის დამადასტურებელი კოდი არასწორია ან უკვე ვადაგასულია :(, გთხოვთ, "
|
||||
"მოითხოვოთ ახალი."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun ანგარიშები"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "თქვენ ავტომატურად გადამისამართდებით 15 წამის შემდეგ"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "ან ${ clickHere } pixelplanet-ზე დასაბრუნებლად"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "დედამიწა"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "მთვარე"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3დ კანვასი"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "კორონავირუსი"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "პიქსელზონა"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1 ბიტი"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "10 საუკეთესო"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"ჩვენი მთავარი კანვასი, მსოფლიოს უზარმაზარი რუკა. განათავსეთ ყველგან, სადაც "
|
||||
"გსურთ"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"მთვარის კანვასი. უსაფრთხო სივრცე ხელოვნებისთვის. არ არის დროშები ან დიდი "
|
||||
"ტექსტი (თუ არ არის ხელოვნების ნაწილი) ან 1,5 კ x 1,5 კ პიქსელზე მეტი "
|
||||
"ნამუშევარი."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "მოათავსეთ ვოქსელები 3D ტილოზე სხვებთან ერთად"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "სპეციალური ტილო SARS-CoV2-ის შესახებ ცნობადობის გასავრცელებლად"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "PixelZone-ის სარკე"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "PixelCanvas-ის სარკე"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "შავ-თეთრი ტილო"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"ტილო წინა დღის ყველაზე აქტიური მოთამაშეებისთვის. ყოველდღიური რეიტინგის "
|
||||
"განახლებები 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"მოგესალმებით ${ name } PixelPlanet-ში, გთხოვთ, გადაამოწმოთ თქვენი ფოსტა"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "გამარჯობა ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"კეთილი იყოს თქვენი მობრძანება pixelplacers-ის ჩვენს პატარა საზოგადოებაში, "
|
||||
"თქვენი ანგარიშის გამოსაყენებლად, თქვენ უნდა გადაამოწმოთ თქვენი ფოსტა. ამის "
|
||||
"გაკეთება შეგიძლიათ აქ:"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "დააწკაპუნეთ დასადასტურებლად"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "ან შემდეგი url-ის კოპირებით:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"გაერთეთ და ნუ მოგერიდებათ დაგვიკავშირდეთ თუ რაიმე პრობლემა შეგექმნათ :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "მადლობა"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"ჩვენ უკვე გამოგიგზავნეთ დამადასტურებელი წერილი, შეგიძლიათ მოითხოვოთ სხვა "
|
||||
"${ minLeft } წუთში."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "დაგავიწყდათ თქვენი პაროლი PixelPlanet-ისთვის? მიიღეთ ახალი აქ"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "გამარჯობა"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"თქვენ მოითხოვეთ ახალი პაროლის მიღება. თქვენ შეგიძლიათ შეცვალოთ თქვენი პაროლი "
|
||||
"შემდეგი 30 წუთის განმავლობაში აქ:"
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"თუ თქვენ არ მოითხოვეთ ეს წერილი, გთხოვთ, უბრალოდ უგულებელყოთ იგი (IP, "
|
||||
"რომელმაც მოითხოვა ეს წერილი, იყო ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "ფოსტა არ არის კონფიგურირებული სერვერზე"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"ჩვენ უკვე გამოგიგზავნეთ მეილი ინსტრუქციებით. გთხოვთ, დაელოდოთ სხვა ფოსტის "
|
||||
"მოთხოვნამდე."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "ვერ ვიპოვე ეს წერილი ჩვენს მონაცემთა ბაზაში"
|
479
i18n/ssr-gr.po
|
@ -1,479 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: el_GR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.3.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Δεν μπορείτε να στείλετε μηνύματα συνομιλίας με proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr ""
|
||||
"Η χώρα σας έχει τεθεί προσωρινά σε σίγαση από αυτό το κανάλι συνομιλίας"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Βρίσκεστε σε μόνιμη σίγαση, εγγραφείτε στο guilded μας για να υποβάλετε "
|
||||
"έκκληση για τη σίγαση"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Είστε απαγορευμένοι"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Ο πάροχος Διαδικτύου σας έχει απαγορευτεί"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Έχετε τεθεί σε σίγαση για άλλα ${ timeMin } λεπτά"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Βρίσκεστε σε σίγαση για άλλα ${ ttl } δευτερόλεπτα"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Στέλνετε μηνύματα πολύ γρήγορα, πρέπει να περιμένετε ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Δεν έχετε πρόσβαση σε αυτό το κανάλι"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Το mail σας πρέπει να επαληθευτεί για να συνομιλήσετε"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Δεν μπορείς να στείλεις τόσο μεγάλο μήνυμα :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Χρησιμοποιήστε το κανάλι int"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Σταματήστε το σπαμ."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Στείλατε έναν κενό κωδικό πρόσβασης ή μη έγκυρα δεδομένα :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr ""
|
||||
"Αυτός ο σύνδεσμος επαναφοράς κωδικού πρόσβασης δεν είναι πλέον έγκυρος :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Οι κωδικοί πρόσβασης δεν ταιριάζουν"
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Ο χρήστης δεν υπάρχει στη βάση δεδομένων μας :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Ο κωδικός πρόσβασης άλλαξε με επιτυχία."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Μη έγκυρη διεύθυνση url :( Ελέγξτε ξανά το mail σας."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Μια τρισδιάστατη σφαίρα ολόκληρου του χάρτη μας"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Κάντε διπλό κλικ στο globe για να επιστρέψετε."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Φόρτωση.."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Τοποθετήστε έγχρωμα pixel σε έναν μεγάλο καμβά με άλλους παίκτες στο "
|
||||
"διαδίκτυο"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Το email δεν μπορεί να είναι κενό."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Το email πρέπει να αποτελείται από τουλάχιστον 5 χαρακτήρες."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Το email δεν μπορεί να είναι μεγαλύτερο από 40 χαρακτήρες."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Το email πρέπει να περιέχει τουλάχιστον μια τελεία"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Το email πρέπει να περιέχει ένα @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Το όνομα δεν μπορεί να είναι κενό."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Το όνομα πρέπει να αποτελείται από τουλάχιστον 2 χαρακτήρες"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Το όνομα πρέπει να είναι μικρότερο από 26 χαρακτήρες"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Το όνομα περιέχει μη έγκυρο χαρακτήρα όπως @, /, \\ ή #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Δεν δόθηκε κωδικός πρόσβασης."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Ο κωδικός θα πρέπει να είναι τουλάχιστον 6 χαρακτήρες."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Ο κωδικός πρόσβασης πρέπει να είναι μικρότερος από 60 χαρακτήρες."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Επαναφορά κωδικού πρόσβασης"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Επαναφέρετε τον κωδικό πρόσβασής σας εδώ"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Επαναφέρετε τον κωδικό πρόσβασης"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Κάντε κλικ εδώ"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "για να επιστρέψετε στο pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr ""
|
||||
"Γεια σας ${ name }, μπορείτε να ορίσετε τον νέο σας κωδικό πρόσβασης εδώ:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Νέος Κωδικός"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Επιβεβαιώστε τον καινούριο σας κωδικό"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Yπέβαλλε"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Δεν είσται συνδεμένοι"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Δεν επιτρέπεται η πρόσβαση σε αυτή τη σελίδα"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Μόνο οι διαχειριστές μπορούν να το κάνουν αυτό"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Δεν είσαι απαγορευμένος"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Δεν είστε καν συνδεδεμένος."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Σφάλμα διακομιστή κατά την αποσύνδεση."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Επαλήθευση mail"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Είσαι πλέον επαληθευμένος :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Ο κωδικός επαλήθευσης της αλληλογραφίας σας δεν είναι έγκυρος ή έχει ήδη "
|
||||
"λήξει :(, ζητήστε νέο."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Αυτός ο πάροχος email δεν επιτρέπεται"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Δεν δόθηκε αναγνωριστικό captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Email είναι ήδη σε χρήση."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Το όνομα χρήστη χρησιμοποιείται ήδη."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Χρειάστηκε πολύς χρόνος, δοκιμάστε ξανά."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Απέτυχες το captcha σου"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Άγνωστο σφάλμα Captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Αποτυχία δημιουργίας νέου χρήστη :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Απέτυχε η δημιουργία συνεδρίας μετά την εγγραφή :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Δεν έχετε πιστοποιηθεί."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Λάθος κωδικός!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Λογαριασμοί PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Θα ανακατευθυνθείτε αυτόματα μετά από 15 δευτερόλεπτα"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Ή ${ clickHere } για να επιστρέψετε στο pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Gh"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Φεγγάρι"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Canvas"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top 10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Ο κύριος καμβάς μας, ένας τεράστιος χάρτης του κόσμου. Τοποθετήστε όπου "
|
||||
"θέλετε"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Καμβάς φεγγαριού. Ασφαλής χώρος για τέχνη. Χωρίς σημαίες ή μεγάλο κείμενο "
|
||||
"(εκτός αν είναι μέρος της τέχνης) ή τέχνη μεγαλύτερη από 1,5k x 1,5k pixel."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Τοποθετήστε Voxel σε έναν τρισδιάστατο καμβά μαζί με άλλους"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Ειδικός καμβάς για τη διάδοση της ευαισθητοποίησης του SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Καθρέφτης του PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Καθρέφτης του PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Ασπρόμαυρος καμβάς"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Ένας καμβάς για τους πιο δραστήριους παίκτες από την προηγούμενη μέρα. "
|
||||
"Καθημερινές ενημερώσεις κατάταξης στις 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Καλώς ορίσατε το ${ name } στο PixelPlanet, επαληθεύστε τo mail σας"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Γεια σας ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"καλώς ήρθατε στη μικρή μας κοινότητα των pixelplacers, για να "
|
||||
"χρησιμοποιήσετε τον λογαριασμό σας, πρέπει να επαληθεύσετε την αλληλογραφία "
|
||||
"σας. Μπορείτε να το κάνετε εδώ: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Κάντε κλικ για επαλήθευση"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Ή αντιγράφοντας την παρακάτω διεύθυνση url:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Διασκεδάστε και μη διστάσετε να επικοινωνήσετε μαζί μας αν αντιμετωπίσετε "
|
||||
"οποιοδήποτε πρόβλημα :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Ευχαριστούμε"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Σας έχουμε ήδη στείλει ένα μήνυμα επαλήθευσης, μπορείτε να ζητήσετε ένα άλλο "
|
||||
"σε ${ minLeft } λεπτά."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr ""
|
||||
"Ξεχάσατε τον κωδικό πρόσβασής σας για το PixelPlanet; Αποκτήστε ένα νέο εδώ"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Γεια"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Ζητήσατε να λάβετε νέο κωδικό πρόσβασης. Μπορείτε να αλλάξετε τον κωδικό "
|
||||
"πρόσβασής σας μέσα στα επόμενα 30 λεπτά εδώ: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Εάν δεν ζητήσατε αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου, απλώς αγνοήστε το "
|
||||
"(η διεύθυνση IP που ζήτησε αυτό το μήνυμα ήταν ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Το mail δεν έχει ρυθμιστεί στον διακομιστή"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Σας έχουμε ήδη στείλει ένα mail με οδηγίες. Περιμένετε πριν ζητήσετε άλλo "
|
||||
"mail."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Δεν ήταν δυνατή η εύρεση αυτού του μηνύματος στη βάση δεδομένων μας"
|
439
i18n/ssr-hr.po
|
@ -1,439 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Fontan 030 <pomanfedurin@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: kk\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Ne možete slati chat poruke putem proxyja"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Vaša zemlja je privremeno isključena iz ovog kanala za chat"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Trajno ste utišani, pridružite se našem Guildedu kako biste apelirali žalbu na utišavanje"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Zabranjeni ste"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Vaš Internet Provider je zabranjen"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Isključen vam je chat još ${ timeMin } minuta"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Isključen vam je još ${ ttl } sekundi"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Šaljete poruke prebrzo, morate čekati ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Nemate pristup ovom kanalu"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Vaša pošta mora biti potvrđena da biste mogli razgovarati"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Ne možete poslati poruku ovoliko dugu :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Molimo koristite int kanal"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Zaustavite poplavu."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Poslali ste praznu lozinku ili nevažeće podatke :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Ova veza za ponovno postavljanje lozinke više nije važeća :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Vaše lozinke se ne podudaraju :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Korisnik ne postoji u našoj bazi podataka :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Lozinka uspješno promijenjena."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Nevažeći url :( Provjerite svoju poštu ponovo."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3D-globus"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D globus naše cijele karte"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Dvaput kliknite na globus za povratak."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Učitavanje..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun pojava"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr "Postavite pixele u boji na platno u stilu karte s drugim igračima na mreži"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "E-pošta ne može biti prazna."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "E-pošta treba imati najmanje 5 znakova."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "E-pošta ne može biti duža od 40 znakova."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "E-pošta mora sadržavati barem točku"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "E-pošta treba sadržavati @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Ime ne može biti prazno."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Ime mora imati najmanje 2 znaka"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Ime mora biti kraće od 26 znakova"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Naziv sadrži nevažeći znak kao što je @, /, \\ ili #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Lozinka nije navedena."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Lozinka mora imati najmanje 6 znakova."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Lozinka mora biti kraća od 60 znakova."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Ponovno postavljanje lozinke"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Кұпиясөзіңізді осында арылта аласыз"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28 src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Ponovno postavite lozinku ovdje"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Kliknite ovdje"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "da biste se vratili na pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Pozdrav ${ name }, svoju novu lozinku možete postaviti ovdje:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nova lozinka"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Potvrdi novu lozinku"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Podnesi"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Niste ulogirani"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Nije vam dopušten pristup ovoj stranici"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "To mogu samo administratori"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Niste zabranjeni"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Ovaj pružatelj usluge e-pošte nije dopušten"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Nije data Captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "E-pošta je već u uporabi."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Korisničko ime se već koristi."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Predugo vam je trebalo, pokušajte ponovno."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Pogrešio si s captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Nepoznata Captcha pogreška"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Stvaranje novog korisnika nije uspjelo :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Nije uspjelo uspostavljanje sesije nakon registracije :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Niste čak ni prijavljeni."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Pogreška poslužitelja prilikom odjave."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43 src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Niste autentificirani."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52 src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Netočna lozinka!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Provjera pošte"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Sada ste verificirani :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid "Your mail verification code is invalid or already expired :(, please request a new one."
|
||||
msgstr "Vaš kod za provjeru pošte je nevažeći ili je već istekao :(, zatražitenovi."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun računi"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Bit ćete automatski preusmjereni nakon 15 s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Ili ${ clickHere } da se vratite na pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Zemlja"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Mjesec"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D-platno"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Koronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top-10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Naše glavno platno, ogromna karta svijeta. Stavite gdje god želite"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) or art larger than 1.5k x "
|
||||
"1.5k pixels."
|
||||
msgstr ""
|
||||
"Mjesečevo platno. Siguran prostor za umjetnost. Bez zastava ili velikog teksta (osim ako je dio "
|
||||
"umjetnosti)ili slika veća od 1,5k x 1,5 pixela."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Postavite Voxele na 3D platno s drugima"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Posebno platno za širenje svijesti o SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Ogledalo PixelZone-a"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Ogledalo PixelCanvasa"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Crno-bijelo platno"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid "A canvas for the most active players from the the previous day. Daily ranking updates at 00:00 UTC."
|
||||
msgstr "Platno za najaktivnije igrače prethodnog dana. Dnevno ažuriranja poretka u 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Dobro došli ${ name } na PixelPlanet, potvrdite svoju poštu"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Pozdrav ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you have to verify your mail. You "
|
||||
"can do that here: "
|
||||
msgstr ""
|
||||
"dobrodošli u našu malu zajednicu pixelplacera, da koristite svoj račun, vi morate potvrditi svoju poštu. "
|
||||
"To možete učiniti ovdje: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Kliknite za verifikaciju"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Ili kopiranjem sljedećeg url-a:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid "Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Zabavite se i ne ustručavajte se kontaktirati nas ako naiđete na probleme :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Hvala"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid "We already sent you a verification mail, you can request another one in ${ minLeft } minutes."
|
||||
msgstr "Već smo vam poslali e-poruku za potvrdu, možete zatražiti drugu u ${ minLeft } minuta."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Zaboravili ste lozinku za PixelPlanet? Nabavite novu ovdje"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Pozdrav"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid "You requested to get a new password. You can change your password within the next 30min here: "
|
||||
msgstr "Zatražili ste novu lozinku. Možete promijeniti svoju lozinku unutar sljedećih 30 minuta ovdje: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that requested this mail was ${ ip })."
|
||||
msgstr "Ako niste zatražili ovu poruku, samo je zanemarite (ip kojizatražio je da ova poruka bude ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "E-pošta nije konfigurirana na poslužitelju"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid "We already sent you a mail with instructions. Please wait before requesting another mail."
|
||||
msgstr "Već smo vam poslali e-mail s uputama. Pričekajte prije zahtjeva druge poruke."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Nismo mogli pronaći ovu poštu u našoj bazi podataka"
|
635
i18n/ssr-hu.po
|
@ -5,321 +5,370 @@ msgstr ""
|
|||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: hu\n"
|
||||
"Language: hu_HU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
"X-Generator: Poedit 2.4.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
#: src/core/ChatProvider.js:287
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Proxyval nem küldhetsz üzenetet"
|
||||
msgstr "Proxy-val nem küldhetsz üzenetet"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Az országod ideiglenesen némítva van ezen a chaten"
|
||||
#: src/core/ChatProvider.js:292
|
||||
msgid "Couldn't send your message, pls log out and back in again."
|
||||
msgstr "Nem sikerült elküldeni az üzenetet, lépj ki és aztán újra be."
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr ""
|
||||
"Örökre némítva lettél, csatlakozz a Discord szerverünkhöz a fellebbezéshez"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Ki lettél tiltva"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Az internetszolgáltatód ki van tiltva"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "${ timeMin } percig némítva vagy"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "${ ttl } másodpercig némítva vagy"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#: src/core/ChatProvider.js:306
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Túl gyorsan küldöd az üzeneteket, várnod kell ${ waitTime } másodpercet :("
|
||||
msgstr "Túl gyorsan küldöd az üzeneteket, várnod kell ${ waitTime }mp-t :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
#: src/core/ChatProvider.js:310
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Nincs hozzáférésed ehhez a csatornához"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
#: src/core/ChatProvider.js:326
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Hitelesítsd az email címed ahhoz, hogy írni tudj"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Az e-mail címednek hitelesítettnek kell lennie ahhoz, hogy írhass a chatre"
|
||||
"Véglegesen némítva lettél, csatlakozz a Guilded szerverünkhöz a "
|
||||
"fellebbezéshez"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
#: src/core/ChatProvider.js:336
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Még ${ timeMin } percig leszel némítva"
|
||||
|
||||
#: src/core/ChatProvider.js:338
|
||||
msgid "You are muted for another ${ muted } seconds"
|
||||
msgstr "Még ${ muted } másodpercig leszel némítva"
|
||||
|
||||
#: src/core/ChatProvider.js:346
|
||||
msgid "Ow no! Spam protection decided to mute you"
|
||||
msgstr "Jaj ne! A spam filter úgy döntött, hogy lenémít"
|
||||
|
||||
#: src/core/ChatProvider.js:357
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Nem tudsz ilyen hosszú üzenetet küldeni :("
|
||||
msgstr "Ilyen hosszú üzenetet nem küldhetsz :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
#: src/core/ChatProvider.js:361
|
||||
msgid "Please use int channel"
|
||||
msgstr "Kérjük, használd a nemzetközi csatornát"
|
||||
msgstr "Kérlek, használt az int csatornát"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
#: src/core/ChatProvider.js:365
|
||||
msgid "Your country is temporary muted from chat"
|
||||
msgstr "Az országod átmenetileg némítva van"
|
||||
|
||||
#: src/core/ChatProvider.js:373
|
||||
msgid "Stop flooding."
|
||||
msgstr "Helyedre!"
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Üres jelszót vagy érvénytelen adatokat küldtél :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Ez a jelszó-visszaállítási link már nem érvényes :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "A jelszavak nem egyeznek :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "A felhasználó nem létezik az adatbázisunkban :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Jelszó sikeresen megváltoztatva."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Érvénytelen link :( Kérjük, ellenőrizd újra a leveled."
|
||||
|
||||
#: src/ssr/Globe.jsx:37
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3D földgömb"
|
||||
|
||||
#: src/ssr/Globe.jsx:38
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D-s földgömb az egész térképünkről"
|
||||
|
||||
#: src/ssr/Globe.jsx:51
|
||||
#: src/ssr-components/Globe.jsx:44
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Kattints duplán a földgömbre a visszatéréshez."
|
||||
msgstr "Kattints duplán a glóbuszra, hogy visszatérj."
|
||||
|
||||
#: src/ssr/Globe.jsx:52
|
||||
#: src/ssr-components/Globe.jsx:45
|
||||
msgid "Loading..."
|
||||
msgstr "Betöltés..."
|
||||
msgstr "Töltünk..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:55
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
#: src/ssr-components/Globe.jsx:51
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPLanet.Fun 3DFöld"
|
||||
|
||||
#: src/ssr/PopUp.jsx:56
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun felugró"
|
||||
#: src/ssr-components/Globe.jsx:52
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "A térképünk 3D-s modellje"
|
||||
|
||||
#: src/ssr/Main.jsx:64
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
#: src/ssr-components/Main.jsx:73
|
||||
msgid "PixelPlanet.fun"
|
||||
msgstr "PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/Main.jsx:65
|
||||
#: src/ssr-components/Main.jsx:75
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Helyezz el pixeleket egy hatalmas online vásznon más játékosokkal együtt"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Az e-mail cím nem lehet üres."
|
||||
#: src/routes/reset_password.js:58
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Üres jelszót vagy hibás adatot adtál meg:("
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Az e-mail címnek legalább 5 karakter hosszúnak kell lennie."
|
||||
#: src/routes/reset_password.js:70
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "A jelszó visszaállító link többé nem érvényes :("
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Az e-mail cím nem lehet hosszabb 40 karakternél."
|
||||
#: src/routes/reset_password.js:81
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "A jelszavak nem egyeznek :("
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Az e-mail címnek legalább egy pontot tartalmaznia kell"
|
||||
#: src/routes/reset_password.js:96
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Ilyen felhasználó nincs az adatbázisunkban :("
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Az e-mail címnek tartalmaznia kell egy @-t"
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Jelszó sikeresen megváltoztatva."
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "A név nem lehet üres."
|
||||
#: src/routes/reset_password.js:127
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Érvénytelen url :( Kérlek nézd meg újból az e-mailed."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "A névnek legalább 2 karakterből kell állnia"
|
||||
#: src/routes/reset_password.js:140
|
||||
msgid ""
|
||||
"This passwort reset link is wrong or already expired, please request a new "
|
||||
"one (Note: you can use those links just once)"
|
||||
msgstr ""
|
||||
"A jelszó visszaállító link hibás vagy már lejárt, kérj egy újat (Csak "
|
||||
"egyszer használatos)"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "A név nem lehet hosszabb 26 karakternél"
|
||||
#: src/core/mail.js:65
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Már küldtünk egy megerősítő e-mailt, kérhetsz újat ${ minLeft } perc múlva."
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "A név érvénytelen karaktereket tartalmaz mint például: @, /, \\ vagy #"
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"${ name } , üdvözlünk a Pixelplaneten, kérlek hitesítsd az e-mail címed"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Nem adtál meg jelszót."
|
||||
#: src/core/mail.js:77
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Szia ${ name }"
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "A jelszónak legalább 6 karakter hosszúságúnak kell lennie."
|
||||
#: src/core/mail.js:78
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"üdvözlünk a pixel-művészek kis közösségében; hogy használni tudd a "
|
||||
"felhasználód, hitelesítsd az e-mail címed. Ezt itt teheted meg: "
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "A jelszónak 60 karakternél rövidebbnek kell lennie."
|
||||
#: src/core/mail.js:78
|
||||
msgid "Click to Verify"
|
||||
msgstr "Hitelesítéshez kattints ide"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun jelszó megváltoztatása"
|
||||
#: src/core/mail.js:78 src/core/mail.js:128
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Vagy úgy, hogy kimásolod a url-t:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Jelszó visszaállítása itt"
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Érezd jól magad és ne keress minket bátran, ha problémád akadt."
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
msgid "Thanks"
|
||||
msgstr "Köszi"
|
||||
|
||||
#: src/core/mail.js:98
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Már küldtünk egy utasításokat tartalmazó e-mailt. Kérlek várj mielőtt újat "
|
||||
"kérsz."
|
||||
|
||||
#: src/core/mail.js:106
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Az e-mail cím nem található az adatbázisunkban"
|
||||
|
||||
#: src/core/mail.js:125
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Elfelejtetted a jelszavad? Itt kérhetsz újat"
|
||||
|
||||
#: src/core/mail.js:127
|
||||
msgid "Hello"
|
||||
msgstr "Szia"
|
||||
|
||||
#: src/core/mail.js:128
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr "Új jelszót kértél. itt tudod 30 percig megváltoztatni a jelszavad: "
|
||||
|
||||
#: src/core/mail.js:128 src/ssr-components/PasswordReset.jsx:19
|
||||
#: src/ssr-components/PasswordReset.jsx:28
|
||||
msgid "Reset Password"
|
||||
msgstr "Jelszó visszaállítása"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
#: src/core/mail.js:129
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Ha nem te kérted ez az e-mailt, akkor hagyd figyelmen kívül (az e-mailt "
|
||||
"erről az ip-címről kérték ${ ip })."
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:21
|
||||
#: src/ssr-components/RedirectionPage.jsx:15
|
||||
msgid "Click here"
|
||||
msgstr "Kattints ide"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
#: src/ssr-components/PasswordReset.jsx:22
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "vissza a pixelplanetre"
|
||||
msgstr "hogy visszamenj a pixelplanet-re"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#: src/ssr-components/PasswordReset.jsx:29
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Szia ${ name }, itt tudod beállítani az új jelszavadat:"
|
||||
msgstr "Szia ${ name }, új jelszót itt választhatsz:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
#: src/ssr-components/PasswordReset.jsx:33
|
||||
msgid "New Password"
|
||||
msgstr "Új jelszó"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
#: src/ssr-components/PasswordReset.jsx:41
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Új jelszó megerősítése"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
#: src/ssr-components/PasswordReset.jsx:47
|
||||
msgid "Submit"
|
||||
msgstr "Küldés"
|
||||
msgstr "Beküld"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Nem vagy bejelentkezve"
|
||||
#: src/ssr-components/PasswordReset.jsx:52
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Jelszó visszaállítás"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Nincs hozzáférésed ehhez az oldalhoz"
|
||||
#: src/ssr-components/PasswordReset.jsx:53
|
||||
msgid "Reset your password here"
|
||||
msgstr "Állítsd vissza a jelszavad itt"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Ezt csak az adminok tehetik meg"
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Adj meg egy e-mailt."
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Nem vagy kitiltva"
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Az e-mail címnek legalább 5 karakterből kell állnia."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:22 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Ez az e-mail szolgáltató nem engedélyezett"
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Az e-mail cím nem lehet hosszabb 40 karakternél."
|
||||
|
||||
#: src/utils/validation.js:21
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Az e-mail címben legalább egy pontnak lennie kell"
|
||||
|
||||
#: src/utils/validation.js:23
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Az e-mail címnek tartalmaznia kell egy @-t"
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name can't be empty."
|
||||
msgstr "A név nem lehet üres."
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be at least 4 characters long"
|
||||
msgstr "A névnek legalább 4 karakterből kell állnia"
|
||||
|
||||
#: src/utils/validation.js:32
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "A névnek 26 karakternél rövidebbnek kell lennie"
|
||||
|
||||
#: src/utils/validation.js:39
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "A név érvénytelen karaktereket tartalmaz mint: @, /, \\ vagy #"
|
||||
|
||||
#: src/utils/validation.js:54
|
||||
msgid "No password given."
|
||||
msgstr "Nem adtál meg jelszót."
|
||||
|
||||
#: src/utils/validation.js:57
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "A jelszónak legalább 6 karakter hosszúságúnak kell lennie."
|
||||
|
||||
#: src/utils/validation.js:60
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "A jelszónak 60 karakternél rövidebbnek kell lennie."
|
||||
|
||||
#: src/routes/api/captcha.js:22
|
||||
msgid "No captcha text given"
|
||||
msgstr "Nem adott meg kend rovást"
|
||||
|
||||
#: src/routes/api/captcha.js:36
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Túl lassú voltál, próbáld meg újból."
|
||||
|
||||
#: src/routes/api/captcha.js:42
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Hát ez nem jött össze"
|
||||
|
||||
#: src/routes/api/captcha.js:48
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Ismeretlen Captcha hiba"
|
||||
|
||||
#: src/routes/api/captcha.js:55
|
||||
msgid "Server error occured"
|
||||
msgstr "Szerver hiba történt"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Nincs Captcha megadva"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Az e-mail cím már foglalt."
|
||||
msgstr "E-mail cím már használatban."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
#: src/routes/api/auth/register.js:33
|
||||
msgid "Username already in use."
|
||||
msgstr "A felhasználónév már foglalt."
|
||||
msgstr "Ez a felhasználó foglalt."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Túl sokáig próbáltad, próbáld újra."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Nem sikerült a captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Ismeretlen captcha hiba"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
#: src/routes/api/auth/register.js:61
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Nem sikerült új felhasználót létrehozni :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
#: src/routes/api/auth/register.js:77
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Nem sikerült létrehozni a munkamenetet a regisztráció után :("
|
||||
msgstr "A regisztáció után a munkamenet létrehozása nem sikerült :("
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
#: src/routes/api/auth/logout.js:13
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Nem vagy bejelentkezve."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:41
|
||||
#: src/routes/api/auth/change_passwd.js:37
|
||||
#: src/routes/api/auth/delete_account.js:38
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Nem vagy hitelesítve."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:50
|
||||
#: src/routes/api/auth/change_passwd.js:46
|
||||
#: src/routes/api/auth/delete_account.js:48
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Helytelen jelszó!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:25 src/routes/api/auth/verify.js:32
|
||||
msgid "Mail verification"
|
||||
msgstr "E-mail hitelesítés"
|
||||
msgstr "E-mail megerősítése"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
#: src/routes/api/auth/verify.js:26
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Mostantól hitelesített vagy :)"
|
||||
msgstr "Most már érvényesítve vagy :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
#: src/routes/api/auth/verify.js:32
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"A leveled hitelesítő kódja érvénytelen vagy már lejárt :(, kérj egy újat."
|
||||
"Az megerősító e-mail kódja érvénytelen vagy lejárt :(, kérlek kérj újat."
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Még csak be sem vagy jelentkezve."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:65 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Szerverhiba a kijelentkezéskor."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:44
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:36
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Nem vagy hitelesítve."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:53
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:55
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Hibás jelszó!"
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:46
|
||||
msgid "Muted users can not delete their account."
|
||||
msgstr "A némított felhasználók nem törölhetik fiókjukat."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:62
|
||||
msgid "Muted users can not do this."
|
||||
msgstr "A némított felhasználók nem tehetik meg ezt."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun fiókok"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
#: src/ssr-components/RedirectionPage.jsx:20
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Automatikusan átirányítunk 15 másodperc múlva"
|
||||
msgstr "Automatikusan át leszel irányítva 15mp múlva"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#: src/ssr-components/RedirectionPage.jsx:21
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Vagy ${ clickHere } a pixelplanetre való visszatéréshez"
|
||||
msgstr "Vagy ${ clickHere } hogy visszatérj a pixelplanet-re"
|
||||
|
||||
#: src/ssr-components/RedirectionPage.jsx:25
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Felhasználók"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
|
@ -331,7 +380,7 @@ msgstr "Hold"
|
|||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D vászon"
|
||||
msgstr "3D Vászon"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
|
@ -339,157 +388,49 @@ msgstr "Koronavírus"
|
|||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "Pixelzóna"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "Pixelvászon"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:27
|
||||
msgid "Thoia"
|
||||
msgstr "Trója"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
#: src/canvasesDesc.js:28
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "A fő vásznunk egy hatalmas világtérkép. Azt rajzolsz rá, amit akarsz"
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art)"
|
||||
msgstr ""
|
||||
"Hold vászon. Biztonságos terület a művészet számára. Tiltott a zászló vagy "
|
||||
"nagyméretű szöveg (kivéve, ha az az alkotás része) vagy 1,5k x 1,5k pixelnél "
|
||||
"nagyobb rajz."
|
||||
"Hold vászon. Ez egy biztonságos hely a rajzok számára. A zászló és nagy "
|
||||
"szöveg tilos (hacsaknem egy rajz része)"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Helyezz el voxeleket egy 3D-s vászonra, másokkal együtt"
|
||||
msgstr "Helyezz el voxeleket egy 3D-s vásznon"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Speciális vászon a SARS-CoV2 terjesztésére"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "A Pixelzóna tükörképe"
|
||||
msgstr "A PixelZone tükrözése"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "A Pixelvászon tükörképe"
|
||||
msgstr "A PixelCanvas tükrözése"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Fekete-fehér vászon"
|
||||
|
||||
#: src/canvasesDesc.js:37
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Az előző nap legaktívabb játékosainak vászna. A napi rangsor UTC idő szerint "
|
||||
"00:00-kor frissül."
|
||||
#~ msgid "Could not connect to server, please try again later :("
|
||||
#~ msgstr "Nem sikerült csatlakozni a szerverhez, próbáld meg később :("
|
||||
|
||||
#: src/canvasesDesc.js:38
|
||||
msgid ""
|
||||
"Thoia World Canvas. Advanced fictional worldbuilding and arts. Abandon the "
|
||||
"old world and all it entails."
|
||||
msgstr ""
|
||||
"Trójai világvászon. Haladó fiktív világépítés és művészetek. Hagyd el a régi "
|
||||
"világot és minden velejáróját."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr ""
|
||||
"Üdvözöljük ${ name } a PixelPlaneten, kérjük, hitelesítsd az e-mail címedet"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Szia ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"Üdvözöljük a mi kis pixelrakó közösségünkben. Ha szeretnéd, hogy megmaradjon "
|
||||
"a fiókod, meg kell erősítened az e-mail címedet. Ezt itt teheted meg: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Kattints ide a hitelesítéshez"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Vagy az alábbi link másolásával:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Jó szórakozást és ne felejtsd el felvenni a kapcsolatot velünk, ha bármilyen "
|
||||
"probléma merülne fel :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Köszönjük"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Már küldtünk egy hitelesítő levelet, kérhetsz másikat ${ minLeft } perc "
|
||||
"múlva."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Elfelejtetted a jelszavadat a PixelPlanethez? Itt szerezhetsz újat"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Szia"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Új jelszót kértél. Az elkövetkezendő 30 percen belül megváltoztathatod a "
|
||||
"jelszavadat itt: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Ha nem Te kérted ezt a levelet, kérjük, hagyjad figyelmen kívül (az IP, aki "
|
||||
"ezt a levelet kérte, ${ ip } volt)."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Az e-mail cím nincs beállítva a szerveren"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Már küldtünk neked egy e-mailt az utasításokkal együtt. Kérjük, várj, "
|
||||
"mielőtt újabb levelet kérnél."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Az adatbázisunkban nem találtuk meg ezt az e-mailt"
|
||||
#~ msgid "I think we experienced some error :("
|
||||
#~ msgstr "Szerintem valami hiba történhetett :("
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: hy\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 2.4.2\n"
|
||||
"Last-Translator: \n"
|
||||
"Language: hy\n"
|
||||
|
||||
#: src/core/ChatProvider.js:243
|
||||
msgid "You can not send chat messages with proxy"
|
||||
|
@ -19,13 +19,15 @@ msgstr "Դուք չեք կարող պռուկսիի միջոցով զրուցո
|
|||
# Թարքմանել է Նարեկ Ադամյանը ։)
|
||||
#: src/core/ChatProvider.js:248
|
||||
msgid "Couldn't send your message, pls log out and back in again."
|
||||
msgstr "Հնարավոր չէ ուղարկել ձեր հաղորդագրությունը, մուտք գործեք և նորից փորձեք:"
|
||||
msgstr ""
|
||||
"Հնարավոր չէ ուղարկել ձեր հաղորդագրությունը, մուտք գործեք և նորից փորձեք:"
|
||||
|
||||
#: src/core/ChatProvider.js:262
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Դուք շատ արագ հաղորդագրություններ եք ուղարկում, դուք պետք է սպասեք ${waitTime} s :("
|
||||
"Դուք շատ արագ հաղորդագրություններ եք ուղարկում, դուք պետք է սպասեք $ "
|
||||
"{waitTime} s :("
|
||||
|
||||
#: src/core/ChatProvider.js:266
|
||||
msgid "You don't have access to this channel"
|
||||
|
@ -36,7 +38,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Ձեր փոստը հաստատված պետք է լինի հաղորդագրություն ուղարկելու համար"
|
||||
|
||||
#: src/core/ChatProvider.js:287
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Դուք ընդմիշտ խլացված եք, միացեք մեր guilded բողոքարկելու համար"
|
||||
|
||||
#: src/core/ChatProvider.js:292
|
||||
|
@ -109,7 +111,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Օգտագործողը գոյություն չունի մեր տվյալների բազայում :("
|
||||
|
||||
#: src/routes/reset_password.js:115
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Գաղտնաբառը հաջողությամբ փոխվեծ է:"
|
||||
|
||||
#: src/routes/reset_password.js:134
|
||||
|
@ -118,8 +120,8 @@ msgstr "Անվավեր url :( Խնդրում ենք կրկին ստուգել ձ
|
|||
|
||||
#: src/routes/reset_password.js:147
|
||||
msgid ""
|
||||
"This passwort reset link is wrong or already expired, please request a new one "
|
||||
"(Note: you can use those links just once)"
|
||||
"This passwort reset link is wrong or already expired, please request a new "
|
||||
"one (Note: you can use those links just once)"
|
||||
msgstr ""
|
||||
"Գաղտնաբառի վերակայման այս հղումը սխալ է կամ արդեն լրացել է, խնդրում ենք նորը "
|
||||
"պահանջել (նշում. Այդ հղումները կարող եք օգտագործել միայն մեկ անգամ)"
|
||||
|
@ -130,11 +132,11 @@ msgid ""
|
|||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Մենք ձեզ արդեն ուղարկել ենք ստուգման նամակ, ${minLeft} րոպեից կարող եք պահանջել "
|
||||
"մեկ այլ:"
|
||||
"Մենք ձեզ արդեն ուղարկել ենք ստուգման նամակ, ${minLeft} րոպեից կարող եք "
|
||||
"պահանջել մեկ այլ:"
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Բարի գալուստ ${name} PixelPlanet, խնդրում ենք ստուգել ձեր փոստը"
|
||||
|
||||
# Թառքմանել է Նարեկ Ադամյանը ։)
|
||||
|
@ -145,11 +147,11 @@ msgstr "Ողջույն ${name}"
|
|||
|
||||
#: src/core/mail.js:78
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you have to "
|
||||
"verify your mail. You can do that here: "
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"Բարի գալուստ pixelplacers-ի մեր փոքրիկ համայնք, ձեր հաշիվն օգտագործելու համար պետք "
|
||||
"է ստուգեք ձեր փոստը: Դա կարող եք անել այստեղ ՝"
|
||||
"Բարի գալուստ pixelplacers-ի մեր փոքրիկ համայնք, ձեր հաշիվն օգտագործելու "
|
||||
"համար պետք է ստուգեք ձեր փոստը: Դա կարող եք անել այստեղ ՝"
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid "Click to Verify"
|
||||
|
@ -160,8 +162,10 @@ msgid "Or by copying following url:"
|
|||
msgstr "Կամ պատճենելով հետևյալ url- ը ՝"
|
||||
|
||||
#: src/core/mail.js:79
|
||||
msgid "Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr "Զվարճացեք և մի ամոթ արեք կապնվել մեզ հետ, եթե խրախուսում եք որևէ խնդիր :)"
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Զվարճացեք և մի ամոթ արեք կապնվել մեզ հետ, եթե խրախուսում եք որևէ խնդիր :)"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
msgid "Thanks"
|
||||
|
@ -172,8 +176,8 @@ msgid ""
|
|||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Մենք ձեզ արդեն նամակ ենք ուղարկել ՝ հրահանգներով: Խնդրում ենք սպասել, նախքան մեկ "
|
||||
"այլ նամակ խնդրեք:"
|
||||
"Մենք ձեզ արդեն նամակ ենք ուղարկել ՝ հրահանգներով: Խնդրում ենք սպասել, նախքան "
|
||||
"մեկ այլ նամակ խնդրեք:"
|
||||
|
||||
#: src/core/mail.js:106
|
||||
msgid "Couldn't find this mail in our database"
|
||||
|
@ -189,11 +193,11 @@ msgstr "Ողջույն"
|
|||
|
||||
#: src/core/mail.js:128
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the next "
|
||||
"30min here: "
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Դուք խնդրել եք ձեռք բերել նոր գաղտնաբառ: Հաջորդ 30 րոպեի ընթացքում կարող եք փոխել "
|
||||
"ձեր գաղտնաբառը ՝"
|
||||
"Դուք խնդրել եք ձեռք բերել նոր գաղտնաբառ: Հաջորդ 30 րոպեի ընթացքում կարող եք "
|
||||
"փոխել ձեր գաղտնաբառը ՝"
|
||||
|
||||
#: src/core/mail.js:128 src/ssr-components/PasswordReset.jsx:19
|
||||
#: src/ssr-components/PasswordReset.jsx:28
|
||||
|
@ -203,13 +207,14 @@ msgstr "Վերականգնել գաղտնաբառը"
|
|||
#: src/core/mail.js:129
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that requested "
|
||||
"this mail was ${ ip })."
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Եթե դուք չեք խնդրել այս նամակը, պարզապես անտեսեք այն (ip- ը, որը պահանջել է այս "
|
||||
"նամակը, ${ip} էր):"
|
||||
"Եթե դուք չեք խնդրել այս նամակը, պարզապես անտեսեք այն (ip- ը, որը պահանջել է "
|
||||
"այս նամակը, ${ip} էր):"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:21 src/ssr-components/RedirectionPage.jsx:15
|
||||
#: src/ssr-components/PasswordReset.jsx:21
|
||||
#: src/ssr-components/RedirectionPage.jsx:15
|
||||
msgid "Click here"
|
||||
msgstr "Սեղմեք այստեղ"
|
||||
|
||||
|
@ -298,12 +303,14 @@ msgstr "Հնարավոր չէ միանալ սերվերին, փորձեք մի
|
|||
msgid "I think we experienced some error :("
|
||||
msgstr "Կարծում եմ, որ մենք որոշ սխալ ենք ունեցել :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:41 src/routes/api/auth/change_passwd.js:37
|
||||
#: src/routes/api/auth/change_mail.js:41
|
||||
#: src/routes/api/auth/change_passwd.js:37
|
||||
#: src/routes/api/auth/delete_account.js:38
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Դուք վավերացված չեք:"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:50 src/routes/api/auth/change_passwd.js:46
|
||||
#: src/routes/api/auth/change_mail.js:50
|
||||
#: src/routes/api/auth/change_passwd.js:46
|
||||
#: src/routes/api/auth/delete_account.js:48
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Սխալ գաղտնաբառ!"
|
||||
|
@ -338,11 +345,11 @@ msgstr "Դուք այժմ ստուգված եք :)"
|
|||
|
||||
#: src/routes/api/auth/verify.js:32
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request a new "
|
||||
"one."
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Ձեր փոստի հաստատման ծածկագիրն անվավեր է կամ արդեն լրացել է :(, խնդրում ենք խնդրել "
|
||||
"նորը:"
|
||||
"Ձեր փոստի հաստատման ծածկագիրն անվավեր է կամ արդեն լրացել է :(, խնդրում ենք "
|
||||
"խնդրել նորը:"
|
||||
|
||||
#: src/ssr-components/RedirectionPage.jsx:20
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
|
@ -388,14 +395,15 @@ msgstr "1Բիթ"
|
|||
#: src/canvasesDesc.js:28
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Մեր գլխավոր կտավը ՝ աշխարհի հսկայական քարտեզն է: Տեղադրեք ամենուր, որտեղ ձեզ դուր "
|
||||
"է գալիս"
|
||||
"Մեր գլխավոր կտավը ՝ աշխարհի հսկայական քարտեզն է: Տեղադրեք ամենուր, որտեղ ձեզ "
|
||||
"դուր է գալիս"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Moon canvas. Safe space for art. No flags or large text (unless part of art)"
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art)"
|
||||
msgstr ""
|
||||
"Լուսնի կտավ: Արվեստի համար անվտանգ տարածք: Ոչ մի դրոշ կամ մեծ տեքստ (բացառությամբ "
|
||||
"արվեստի մի մասի)"
|
||||
"Լուսնի կտավ: Արվեստի համար անվտանգ տարածք: Ոչ մի դրոշ կամ մեծ տեքստ "
|
||||
"(բացառությամբ արվեստի մի մասի)"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
471
i18n/ssr-it.po
|
@ -1,471 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Non puoi mandare messaggi in chat con proxy, non fare come i serbi"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Il tuo paese è temporaneamente mutato da questa chat"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr ""
|
||||
"Sei mutato permanentemente, entra sul nostro server Guilded per richiedere "
|
||||
"la rimozione del mute. Oppure entra su discord.io/italy "
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Sei bannato, vai a parlare con donne vere"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Il tuo internet provider è bannato (ti direi di ritenerti fortunato)"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Sei mutato ancora per ${ timeMin } minuti"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Sei mutato ancora per ${ ttl } secondi"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Stai mandando messaggi troppo velocemente, devi aspettare ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Non hai accesso a questa chat"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Devi verificare la tua mail per chattare"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Non puoi mandare un messaggio così lungo :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Per favore usa il canale \"int\". Letteralmente 1984"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Manda messaggi più lentamente, sarai mica un turco"
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Hai inserito una password vuota o data invalido :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Questo password reset link non è più valido"
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Le tue password non corrispondono"
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Questo user non esiste nei nostri database"
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Password cambiata con successo"
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Url invalido :( Per favore controlla nuovamente la tua mail"
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun Globo 3D"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Un Globo 3D di tutta la nostra mappa"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Doppio click sul globo per andare indietro"
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Caricamento..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr "Piazza pixel colorati in un canvas con altri player online"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "L'email non può essere vuota"
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "L'email dovrebbe essere almeno lunga 5 caratteri"
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "L'email non può essere più lunga di 40 caratteri"
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "L'email deve contenere almeno un punto"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "L'email deve contenere una @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Il nome non può essere vuoto"
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Il nome deve avere almeno due caratteri"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Il nome deve essere più corto di 26 caratteri"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Il nome contiene caratteri invalidi come @, /, \\ o #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Nessuna passwrod data"
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "La password deve avere almeno 6 caratteri"
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "La password deve essere più corta di 60 caratteri"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Password Reset"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Resetta la tua password qui"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Reset Password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Clicca qui"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "per tornare su pixelplanet "
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Ciao ${ name }, pui mettere la tua nuova password qui"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nuova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Conferma nuova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Manda"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Non hai effettuato l'accesso"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Non hai il permasso di accedere a questa pagina"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Solo gli admin possono farlo"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Non sei bannato (purtroppo)"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Il tuo email provider non è permesso, 1984"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Nessun captcha dato"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Email già in uso"
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Username già in uso"
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Ci hai messo troppo, riprova"
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Hai sbagliato il captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Errore del captcha sconosciuto"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Fallimento nel creare un nuovo user"
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Fallimento nel ristabilire una sessione dopo la registraione"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Non hai nemmeno fatto l'accesso"
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Errore del server durante il log out"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Non sei autentificato"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Password incorretta"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Verificazione mail"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Adesso sei verificato"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Il tuo mail verification code è invalido o è già scaduto ;(, per farvore "
|
||||
"richiedine uno nuovo"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Accounts"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Sarai rediretto automaticamente dopo 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "o ${ clickHere } per tornare su pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Terra"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Luna "
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Canvas"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Il nostro canvas principale, una enorme mappa del mondo. Piazza onunque to "
|
||||
"voglia"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Canvas luna. Spazio sicuro per le art. Nessuna bandiera o testo lago (a meno "
|
||||
"che sia parte di un'art) o art più grande di 1.5kx1.5k pixel"
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Piazza Voxels sul canvas 3D con altri"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Canvas speciale per sensibilizzare sul SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Mirror di PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Mirror di PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Canvas in bianco e nero"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Canvas per i player più attivi del giorno precedente (leggi autistici). Le "
|
||||
"classifiche giornaliere riniziano a 00:00 UTC"
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "Benvenuto ${ name } su PixelPlanet, per favore verifica la tua mail"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Ciao ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"Benvenuo alla nostra piccola community di pixelplacers, per usare il tuo "
|
||||
"account, devi verificare il tuo account mail. Lo puoi fare qui:"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Clicca per verificare"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "o copia il link seguente"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr "Divertiti e non esitare a contattarci se incontri dei problemi"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Grazie, Ave Roma"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Ti abbiamo già mandato una mail per verifica, ne puoi richiedere un'altra in "
|
||||
"${ minLeft } minuti"
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Hai dimenticato la tua password di PixelPlanet= Chiedine un'altra qui"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Ciao"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Hai richiesto una nuova password. Puoi cambiare la tua password nei prossimi "
|
||||
"30 minuti qui:"
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Se non hai richiesto questa mail, per favore ignorala (l'IP che ha richiesto "
|
||||
"questa mail era ${ ip })"
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Questa mail non è configurata sul server"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Ti abbiamo già mandato una mail con delle istruzioni. Per favore aspetta "
|
||||
"prima di richiedere un'altra mail."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Non abbiamo trovato questa mail nei nostri database"
|
|
@ -1,483 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.4.2\n"
|
||||
"Last-Translator: Fontan 030 <pomanfedurin@gmail.com>\n"
|
||||
"Language: kk\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Прокси қолданған кезде чатта жаза алмайсыз"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Осы арнада бүкіл еліңіздің жазу рұқсаты уақытша шектелген"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr ""
|
||||
"Жазу рұқсатыңыз мерзімсіз шектелген, шағым беру үшін біздің guilded-ке "
|
||||
"қосылыңыз"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Сіз бұғатталғансыз"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Интернет провайдеріңіз бұғатталған"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Жазу рұқсатыңыз тағы ${ timeMin } минутқа шектелген"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Жазу рұқсатыңыз тағы ${ ttl } секундқа шектелген"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Хаттарды тым жиі жіберіп отырсыз, ${ waitTime } секунд күтуіңіз керек :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Бұл арнаны көруге рұқсатыңыз жоқ"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Чатта жазу үшін эл. поштаңызды растау қажет"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Сондай ұзын хат жібере алмайсыз :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "int арнасында жазыңызшы"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Флудты доғарыңыз."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Бос құпиясөз немесе жарамсыз деректерді жібердіңіз :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Бұл құпиясөз арылту сілтемесі енді жарамсыз :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Сіздің құпиясөздер бірдей емес :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Біздің дерекқорда мұндай қолданушы жоқ :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Құпиясөз сәтті өзгертілді."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Жарамсыз URL :( Эл. поштаңызды қайта тексеріңіз."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3D-глобусы"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Бүкіл картамыздың 3D-глобусы"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Оралу үшін глобусқа екі рет басыңыз."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Жүктелуде..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun қалқымалы терезесі"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Басқа желідегі ойыншылармен бірге түрлі-түсті пикселдерді карта стиліндегі "
|
||||
"кенепке салыңыз"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Эл. пошта бос бола алмайды."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Эл. пошта кемінде 5 таңбадан тұруы керек."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Эл. пошта 40 таңбадан аспауы керек."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Эл. поштада кемінде бір нүкте болуы керек"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Эл. поштада @ болуы керек"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Қолданушы аты бос бола алмайды."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Қолданушы аты кемінде 2 таңбадан тұруы керек"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Қолданушы аты 26 таңбадан аспауы керек"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Қолданушы атында @, /, \\ немесе # сияқты жарамсыз таңбалар бар"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Құпиясөз берілмеген."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Құпиясөз кемінде 6 таңбадан тұруы керек."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Құпиясөз 60 таңбадан аспауы керек."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20
|
||||
#: src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun құпиясөзін арылту"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21
|
||||
#: src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Кұпиясөзіңізді осында арылта аласыз"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
#: src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Құпиясөзді арылту"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
#: src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Осында басыңыз"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "pixelplanet-ке оралу үшін"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Сәлем, ${ name }, жаңа құпиясөзді мына жерде орната аласыз:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Жаңа құпиясөз"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Жаңа құпиясөзді растау"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Жіберу"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Кірмегенсіз"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Бұл бетті көруге рұқсатыңыз жоқ"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Мына әрекетті әкімшілер ғана жасай алады"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Сіз бұғаттауда емессіз"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21
|
||||
#: src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Осы эл. пошта сервисіне тыйым салынған"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha берілмеген"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Бұл эл. поштаны біреу алып қойған."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Бұл қолданушы атын біреу алып қойған."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Тым көп уақыт өтті, қайта байқап көріңіз."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Captcha-ны шешпедіңіз"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Белгісіз Captcha қатесі"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Жаңа тіркелгі жасау мүмкін емес :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Тіркелуден кейінгі сессияны орнату мүмкін емес :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Сіз тіпті жүйеге кірмедіңіз."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55
|
||||
#: src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Жүйеден шыққанда сервер қатесі орын алды."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Аутентификациядан өтпедіңіз."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Құпиясөз дұрыс емес!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Эл. пошта растау"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Енді сіз расталғансыз :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Эл. пошта растау кодыңыз жарамсыз немесе оның мерзімі өтіп кетті :(, жаңа "
|
||||
"растау кодын сұратыңыз."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun тіркелгілері"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "15 секундтан кейін сізді автоматты түрде қайта бағдарлаймыз"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Немесе pixelplanet-ке оралу үшін ${ clickHere }"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Жер"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Ай"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D-кенеп"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Коронавирус"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1 битті"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Топ-10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Басты кенебіміз, үлкен әлем картасы. Кез келген жерде сурет салыңыз"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Ай кенебі. Суреттер үшін қауіпсіз орын. Тулар, сурет құрамына кірмейтін "
|
||||
"үлкен мәтін және өлшемі 1,5 мың x 1,5 мың пикселден асатын суреттерді салуға "
|
||||
"болмайды."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Басқалармен бірге вокселдерді 3D-кенепке салыңыз"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "SARS-CoV2 туралы хабардарлықты арттыруға арналған арнайы кенеп"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "PixelZone айнасы"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "PixelCanvas айнасы"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Ақ-қара кенеп"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Кеше ең белсенді болған ойыншыларға арналған кенеп. Күнделікті рейтиң UTC "
|
||||
"бойынша түн ортасында арылтады."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "${ name }, PixelPlanet-ке қош келдіңіз, эл. поштаңызды растаңыз"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Сәлем, ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"біздің пиксел салушылар шағын қоғамдастығымызға қош келдіңіз, тіркелгіңізді "
|
||||
"қолдану үшін эл. пошта растауыңыз керек. Бұны мына жерде істей аласыз: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Растау үшін басыңыз"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Немесе осы сілтемені көшіріп алыңыз:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Уақытты жақсы өткізуіңізді тілейміз! Қандай да бір мәселелер болса, бізге "
|
||||
"қысылмай хабарласыңыз :)"
|
||||
|
||||
#: src/core/MailProvider.js:70
|
||||
#: src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Рахмет"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in ${ "
|
||||
"minLeft } minutes."
|
||||
msgstr ""
|
||||
"Біз сізге растау хатын жіберіп қойдық, жаңасын ${ minLeft } минуттан кейін "
|
||||
"сұрай аласыз."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "PixelPlanet құпиясөзіңізді ұмыттыңыз ба? Жаңасын мына жерден алыңыз"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Сәлем"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Сіз құпиясөз арылтуды сұрадыңыз. Келесі 30 минут ішінде құпиясөзіңізді "
|
||||
"осында өзгерте аласыз: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Бұл сұрауды жасамаған болсаңыз, осы хатты елемей-ақ қойыңыз (оны сұраған IP: "
|
||||
"${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Осы серверде эл. пошта бапталмаған"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Біз сізге нұсқаулы хатты жіберіп қойдық. Басқа хат сұрамас бұрын азғантай "
|
||||
"күте тұрыңыз."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Осы эл. пошта біздің дерекқордан табылмады"
|
475
i18n/ssr-nl.po
|
@ -1,475 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: nl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.3.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Je kunt geen chatberichten versturen met proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Je land is tijdelijk gedempt op dit chatkanaal"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Je bent permanent gedempt, sluit je aan bij onze gilde om in beroep te gaan "
|
||||
"tegen de demper"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Je bent gebanned"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Uw internetprovider is gebanned"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Je bent nog eens ${ timeMin } minuten gedempt"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Je bent nog eens ${ ttl } seconden gedempt"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Je verzendt berichten te snel, je moet ${ waitTime }s wachten :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Je hebt geen toegang tot dit kanaal"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Je e-mail moet worden geverifieerd om te kunnen chatten"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Je kunt niet zo lang een bericht sturen :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Gebruik alstublieft het int-kanaal"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Stop met spammen."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Je hebt een leeg wachtwoord of ongeldige gegevens verzonden :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr ""
|
||||
"Deze link voor het opnieuw instellen van het wachtwoord is niet meer geldig :"
|
||||
"("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "De wachtwoorden komen niet overeen :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Gebruiker bestaat niet in onze database :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Wachtwoord succesvol veranderd."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Ongeldige url :( Controleer a.u.b. nogmaals uw mail."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Een 3D-wereldbol van onze hele kaart"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Dubbelklik op wereldbol om terug te gaan."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Laden…"
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun-pop-up"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Plaats kleurpixels op een canvas in kaartstijl samen met andere spelers "
|
||||
"online"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "E-mail mag niet leeg zijn."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "E-mail moet minimaal 5 tekens lang zijn."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "E-mail mag niet langer zijn dan 40 tekens."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "E-mail moet op zijn minst een punt bevatten"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "E-mail moet een @ bevatten"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Naam mag niet leeg zijn."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "De naam moet minimaal 2 tekens lang zijn"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "De naam moet korter zijn dan 26 tekens"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Naam bevat ongeldige tekens zoals @, /, \\ of #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Geen wachtwoord gegeven."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Het wachtwoord moet op zijn minst 6 tekens lang zijn."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Wachtwoord moet korter zijn dan 60 tekens."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun wachtwoord opnieuw instellen"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Stel hier uw wachtwoord opnieuw in"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Wachtwoord opnieuw instellen"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Klik hier"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "om terug te gaan naar pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Hallo ${ name }, je kunt hier je nieuwe wachtwoord instellen:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nieuw wachtwoord"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Bevestig nieuw wachtwoord"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Indienen"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Je bent niet ingelogd"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "U heeft geen toegang tot deze pagina"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Alleen beheerders kunnen dat doen"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Je bent niet gebanned"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Je bent niet eens ingelogd."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Serverfout bij uitloggen."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "E-mail verificatie"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Je bent nu geverifieerd :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Uw e-mailverificatiecode is ongeldig of al verlopen :(, vraag een nieuwe aan."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Deze e-mailprovider is niet toegestaan"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Geen Captcha gegeven"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Email is al in gebruik."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Gebruikersnaam al in gebruik."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Het duurde te lang, probeer het opnieuw."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Je captcha is mislukt"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Onbekende Captcha-fout"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Kan nieuwe gebruiker niet aanmaken :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Kan sessie niet tot stand brengen na registratie :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "U bent niet geauthenticeerd."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Onjuist wachtwoord!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun-accounts"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Na 15 seconden wordt u automatisch doorgestuurd"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Of ${ clickHere } om terug te gaan naar pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Aarde"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Maan"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D-canvas"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Ons belangrijkste canvas, een enorme kaart van de wereld. Plaats waar je "
|
||||
"maar wilt"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Maan canvas. Veilige plek voor kunst. Geen vlaggen of grote tekst (tenzij "
|
||||
"onderdeel van kunst) of kunst groter dan 1,5k x 1,5k pixels."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Plaats Voxels samen met anderen op een 3D-canvas"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Speciaal canvas om het bewustzijn van SARS-CoV2 te vergroten"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Mirror van PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Mirror van PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Zwart-wit canvas"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Een canvas voor de meest actieve spelers van de vorige dag. Dagelijkse "
|
||||
"ranking-updates om 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Welkom ${ name } bij PixelPlanet, verifieer a.u.b. uw e-mail"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Hallo ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"welkom bij onze kleine gemeenschap van pixelplacers, om je account te "
|
||||
"gebruiken, moet je je e-mail verifiëren. Dat kan hier: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Klik om te verifiëren"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Of door volgende url te kopiëren:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Veel plezier en aarzel niet om contact met ons op te nemen als u problemen "
|
||||
"ondervindt :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Bedankt"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"We hebben je al een verificatiemail gestuurd, je kunt binnen ${ minLeft } "
|
||||
"minuten een nieuwe aanvragen."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Je bent je wachtwoord voor PixelPlanet vergeten? Koop hier een nieuwe"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Hallo"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"U heeft een nieuw wachtwoord aangevraagd. U kunt uw wachtwoord hier binnen "
|
||||
"30 minuten wijzigen: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Als je deze mail niet hebt aangevraagd, negeer deze dan gewoon (het IP-adres "
|
||||
"dat deze mail opvroeg was ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Mail is niet geconfigureerd op de server"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"We hebben je al een mail gestuurd met instructies. Wacht a.u.b. voordat u "
|
||||
"een nieuwe e-mail aanvraagt."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Kon deze mail niet vinden in onze database"
|
|
@ -35,7 +35,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Дæ пост æвæццæгæн басгæрст, цæмæй чаты æмхиц уын"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Дæ Фæсмынæг, баиу махæн ырдæм цæмæй аппелиацийы хъалон"
|
||||
|
||||
#: src/core/ChatProvider.js:336
|
||||
|
@ -108,7 +108,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Пайдагæнæг æнæ фæлдис нæ бындуры бæрæггæнæнтæ :("
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Парол æнтыстджынæй ивыдзинад."
|
||||
|
||||
#: src/routes/reset_password.js:127
|
||||
|
@ -133,7 +133,7 @@ msgstr ""
|
|||
"минуты фæстæ."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Æгас цу ${ name } PixelPlanet'мæ, табуафси сфидар дæ пост"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -159,7 +159,7 @@ msgstr "Кæнæ къопи ис ма фæдылдзог URL:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Ивхæрс æмæ æфсæрмы нæй баздæх махæн, ды савзæр куы рæдыдтæ :)"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
|
|
|
@ -37,7 +37,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Você precisa verificar seu e-mail para falar no bate-papo"
|
||||
|
||||
#: src/core/ChatProvider.js:287
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Você foi silenciado para sempre, entre no nosso Guilded para pedir um "
|
||||
"recurso sobre seu silenciamento"
|
||||
|
@ -114,7 +114,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Usuário não existe em nosso banco de dados :("
|
||||
|
||||
#: src/routes/reset_password.js:115
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Senha trocada com sucesso."
|
||||
|
||||
#: src/routes/reset_password.js:134
|
||||
|
@ -139,7 +139,7 @@ msgstr ""
|
|||
"${ minLeft } minutos."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Bem-vindo ${ name } ao PixelPlanet, por favor verifique seu e-mail"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -165,7 +165,7 @@ msgstr "Ou copiando o seguinte URL:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Se divirta e não hesite para nos contar se encontrar algum problema :)"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
|
|
1576
i18n/ssr-ro.po
621
i18n/ssr-ru.po
|
@ -5,186 +5,244 @@ msgstr ""
|
|||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ru\n"
|
||||
"Language: ru_RU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.1.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
#: src/core/ChatProvider.js:390
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Вы не можете отправлять сообщения в чат, используя прокси"
|
||||
msgstr "Вы не можете отправлять сообщения в чат, если Вы используете прокси"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Ваша страна временно в муте в этом канале"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr "Вы в муте навсегда, заходите в Guilded, чтобы обжаловать мут"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
#: src/core/ChatProvider.js:392
|
||||
msgid "You are banned"
|
||||
msgstr "Вы забанены"
|
||||
msgstr "Вы в бане"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
#: src/core/ChatProvider.js:394
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Ваш интернет-провайдер заблокирован"
|
||||
msgstr "Ваш Интернет Провайдер в бане"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Вы в муте еще на ${ timeMin } минут"
|
||||
#: src/core/ChatProvider.js:396
|
||||
msgid "You are not allowed to use chat"
|
||||
msgstr "Вам запрещено использовать чат"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Вы в муте еще на ${ ttl } секунд"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#: src/core/ChatProvider.js:411
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Вы отправляете сообщения слишком быстро, вам нужно подождать ${waitTime}с :("
|
||||
"Вы отправляете сообщения слишком часто, Вам нужно подождать ${ waitTime }"
|
||||
"сек :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
#: src/core/ChatProvider.js:415
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "У вас нет доступа к этому каналу"
|
||||
msgstr "У Вас нет доступа к этому каналу"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
#: src/core/ChatProvider.js:433
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Ваша почта должна быть подтверждена, чтобы общаться в чате"
|
||||
msgstr "Чтобы писать в чате, Ваша почта должна быть подтверждена"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
#: src/core/ChatProvider.js:438
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Вам выдан мут навсегда, присоединитесь к нашему Guilded для апелляции"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Вам выдан мут еще на ${ timeMin } мин"
|
||||
|
||||
#: src/core/ChatProvider.js:445
|
||||
msgid "You are muted for another ${ muted } seconds"
|
||||
msgstr "Вам выдан мут еще на ${ muted } сек"
|
||||
|
||||
#: src/core/ChatProvider.js:453
|
||||
msgid "Ow no! Spam protection decided to mute you"
|
||||
msgstr "О нет! Защита от спама решила выдать Вам мут"
|
||||
|
||||
#: src/core/ChatProvider.js:464
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Вы не можете отправить сообщение такой длины :("
|
||||
msgstr "Вы не можете послать настолько длинное сообщение :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
#: src/core/ChatProvider.js:468
|
||||
msgid "Please use int channel"
|
||||
msgstr "Пожалуйста, используйте канал int"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
#: src/core/ChatProvider.js:475
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "В этом канале чата всей Вашей стране временно выдан мут"
|
||||
|
||||
#: src/core/ChatProvider.js:483
|
||||
msgid "Stop flooding."
|
||||
msgstr "Перестаньте флудить."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
#: src/routes/reset_password.js:37
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Вы отправили пустой пароль или неверные данные :("
|
||||
msgstr "Вы установили пустой пароль или неверные данные :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
#: src/routes/reset_password.js:49
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Эта ссылка для сброса пароля больше недействительна :("
|
||||
msgstr "Это ссылка для сброса пароля больше недействительна :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
#: src/routes/reset_password.js:60
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Ваши пароли не совпадают :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
#: src/routes/reset_password.js:75
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Пользователь не существует в нашей базе данных :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgstr "Пароль успешно изменен."
|
||||
#: src/routes/reset_password.js:87
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Пароль успешно изменён."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
#: src/routes/reset_password.js:106
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Неверный адрес :( Пожалуйста, проверьте свою почту еще раз."
|
||||
msgstr "Неверный url :( Пожалуйста проверьте вашу почту ещё раз."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
#: src/routes/reset_password.js:119
|
||||
msgid ""
|
||||
"This passwort reset link is wrong or already expired, please request a new "
|
||||
"one (Note: you can use those links just once)"
|
||||
msgstr ""
|
||||
"Эта ссылка на изменение пароля неверна или уже истекла, пожалуйста запросите "
|
||||
"новую (Примечание: Вы можете использовать эти ссылки только один раз)"
|
||||
|
||||
#: src/ssr/Win.jsx:32
|
||||
msgid "PixelPlanet.Fun Window"
|
||||
msgstr "Окно PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/Win.jsx:33
|
||||
msgid "PixelPlanet.Fun Windows"
|
||||
msgstr "Окна PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:58
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/Main.jsx:59
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Ставьте цветные пиксели на полотне в виде карты мира вместе с другими "
|
||||
"игроками по сети"
|
||||
|
||||
#: src/ssr/Globe.jsx:34
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3D-глобус"
|
||||
msgstr "3D Глобус PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
#: src/ssr/Globe.jsx:35
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D-глобус всей нашей карты"
|
||||
msgstr "3D глобус всей нашей карты"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
#: src/ssr/Globe.jsx:48
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Дважды щелкните по глобусу, чтобы вернуться."
|
||||
msgstr "Дважды кликните на глобус для возвращения назад."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
#: src/ssr/Globe.jsx:49
|
||||
msgid "Loading..."
|
||||
msgstr "Загрузка..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "Всплывающее окно PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr "Ставьте цветные пиксели на огромном полотне с другими людьми по сети"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Необходимо указать адрес электронной почты."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Электронная почта должна состоять не менее чем из 5 символов."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Электронная почта не может быть длиннее 40 символов."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Электронная почта должна содержать точку"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Электронная почта должна содержать @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Имя пользователя не может быть пустым."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Имя пользователя должно состоять не менее чем из 2 символов"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Имя пользователя должно быть короче 26 символов"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
#: src/core/mail.js:71
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Имя пользователя содержит недопустимые символы, такие как @, /, \\ или #"
|
||||
"Мы уже отправили Вам письмо с подтверждением, Вы можете запросить ещё одно "
|
||||
"через ${ minLeft } мин."
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Пароль не указан."
|
||||
#: src/core/mail.js:78
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"Добро Пожаловать ${ name } на PixelPlanet, пожалуйста подтвердите Вашу почту"
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Пароль должен содержать как минимум 6 символов."
|
||||
#: src/core/mail.js:79
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Здравствуйте, ${ name }"
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Пароль должен быть короче 60 символов."
|
||||
#: src/core/mail.js:80
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"добро пожаловать в наше небольшое сообщество ставящих пикселями, для "
|
||||
"использования Вашего аккаунта Вам нужно подтвердить вашу почту. Вы можете "
|
||||
"сделать это здесь: "
|
||||
|
||||
#: src/core/mail.js:80
|
||||
msgid "Click to Verify"
|
||||
msgstr "Нажмите чтобы Подтвердить"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:127
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Или скопируйте следующий url:"
|
||||
|
||||
#: src/core/mail.js:81
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Развлекайтесь и не стесняйтесь обращаться к нам, если у вас возникнут "
|
||||
"проблемы :)"
|
||||
|
||||
#: src/core/mail.js:82 src/core/mail.js:129
|
||||
msgid "Thanks"
|
||||
msgstr "Спасибо"
|
||||
|
||||
#: src/core/mail.js:92
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Почта не настроена на сервере"
|
||||
|
||||
#: src/core/mail.js:101
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Мы уже отправили вам письмо с инструкциями. Пожалуйста подождите прежде чем "
|
||||
"запрашивать другое письмо."
|
||||
|
||||
#: src/core/mail.js:109
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Не удалось найти эту почту в нашей базе данных"
|
||||
|
||||
#: src/core/mail.js:125
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Вы забыли ваш пароль от PixelPlanet? Введите новый здесь"
|
||||
|
||||
#: src/core/mail.js:126
|
||||
msgid "Hello"
|
||||
msgstr "Здравствуйте"
|
||||
|
||||
#: src/core/mail.js:127
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Вы запросили новый пароль. Вы можете сменить Ваш пароль в течение следующих "
|
||||
"30 минут здесь: "
|
||||
|
||||
#: src/core/mail.js:127 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Сбросить Пароль"
|
||||
|
||||
#: src/core/mail.js:128
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Если Вы не запрашивали это письмо, пожалуйста просто проигнорируйте его (IP "
|
||||
"которое запросило это письмо было ${ ip })."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Сброс пароля PixelPlanet.fun"
|
||||
msgstr "Сброс Пароля PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Сбросьте пароль здесь"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Сбросить пароль"
|
||||
msgstr "Сбросьте свой пароль здесь"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
|
@ -192,112 +250,168 @@ msgstr "Нажмите здесь"
|
|||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr ", чтобы вернуться на pixelplanet"
|
||||
msgstr "для возвращения назад на pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Здравствуйте, ${ name }, вы можете установить новый пароль здесь:"
|
||||
msgstr "Здравствуйте ${ name }, Вы можете установить новый пароль здесь:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Новый пароль"
|
||||
msgstr "Новый Пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Подтвердите новый пароль"
|
||||
msgstr "Подтвердить Новый Пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
#: src/ssr/PasswordReset.jsx:64
|
||||
msgid "Submit"
|
||||
msgstr "Отправить"
|
||||
msgstr "Подтвердить"
|
||||
|
||||
#: src/routes/api/captcha.js:20
|
||||
msgid "No captcha text given"
|
||||
msgstr "Не указан текст капчти"
|
||||
|
||||
#: src/routes/api/captcha.js:25
|
||||
msgid "No captcha id given"
|
||||
msgstr "Не указан идентификатор каптчи"
|
||||
|
||||
#: src/routes/api/auth/register.js:54 src/routes/api/captcha.js:44
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Вы потратили слишком много времени, попробуйте снова."
|
||||
|
||||
#: src/routes/api/auth/register.js:57 src/routes/api/captcha.js:50
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Вы провалили ваш ввод каптчи"
|
||||
|
||||
#: src/routes/api/auth/register.js:60 src/routes/api/captcha.js:56
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Неизвестная ошибка с каптчей"
|
||||
|
||||
#: src/routes/api/captcha.js:63
|
||||
msgid "Server error occured"
|
||||
msgstr "Случилась ошибка сервера"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Почта не может быть пустой."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Почта должна быть длинной минимум 5 символов."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Почта не может быть длиннее 40 символов."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Почта должна содержать как минимум одну точку"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Почта должна содержать @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Имя Пользователя не может быть пустым."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Имя Пользователя должно быть длиной минимум 2 символа"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Имя Пользователя должно быть короче 26 символов"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Имя Пользователя содержит неверные символы, например @, /, \\ или #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Пароль отсутствует."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Пароль должен быть минимум 6 символов длинной."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Пароль должен быть короче 60 символов."
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Вы не авторизованы"
|
||||
msgstr "Вы не вошли в аккаунт"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "У вас нет доступа к этой странице"
|
||||
msgstr "Вам запрещен доступ к этой странице"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Это могут сделать только админы"
|
||||
msgstr "Только администраторы могут делать это"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
#: src/routes/api/baninfo.js:24
|
||||
msgid "You are not banned"
|
||||
msgstr "Вы не забанены"
|
||||
msgstr "Вы не в бане"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Этот провайдер электронной почты не разрешен"
|
||||
#: src/routes/api/auth/register.js:26
|
||||
msgid "No Captcha given"
|
||||
msgstr "Отсутствует Каптча"
|
||||
|
||||
#: src/routes/api/auth/register.js:29
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Эта Почта уже используется."
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Капча не введена"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Эта электронная почта уже используется."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Это имя пользователя уже используется."
|
||||
msgstr "Это Имя Пользователя уже используется."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Слишком долго, попробуйте еще раз."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Вы неправильно ввели капчу"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Неизвестная ошибка капчи"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
#: src/routes/api/auth/register.js:84
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Не удалось создать нового пользователя :("
|
||||
msgstr "Провал при создании нового пользователя :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
#: src/routes/api/auth/register.js:100
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Не удалось установить сеанс после регистрации :("
|
||||
msgstr "Провал при установлении сессии после регистрации :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Вы даже не вошли в систему."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Ошибка сервера при выходе из аккаунта."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_mail.js:38
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
#: src/routes/api/auth/delete_account.js:34
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Вы не авторизованы."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_mail.js:47
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
#: src/routes/api/auth/delete_account.js:44
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Неверный пароль!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Вы даже не вошли в аккаунт."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:54 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Случилась ошибка сервера во время выхода из аккаунта."
|
||||
|
||||
#: src/routes/api/auth/verify.js:22 src/routes/api/auth/verify.js:29
|
||||
msgid "Mail verification"
|
||||
msgstr "Подтверждение почты"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
#: src/routes/api/auth/verify.js:23
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Вы прошли проверку :)"
|
||||
msgstr "Теперь вы подтверждены :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
#: src/routes/api/auth/verify.js:29
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Ваш код проверки почты недействителен или срок его действия уже истек :(, "
|
||||
"запросите новый."
|
||||
"Ваше письмо с кодом подтверждения неверное или уже истекло :( , пожалуйста "
|
||||
"запросите другое."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
|
@ -305,172 +419,93 @@ msgstr "Аккаунты PixelPlanet.fun"
|
|||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Вы будете автоматически перенаправлены через 15 секунд"
|
||||
msgstr "Вы будете автоматически перенаправленны через 15с"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Или ${clickHere}, чтобы вернуться на pixelplanet"
|
||||
msgstr "Или ${ clickHere }, чтобы вернуться назад на pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
#: src/canvasesDesc.js:18
|
||||
msgid "Earth"
|
||||
msgstr "Земля"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Moon"
|
||||
msgstr "Луна"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D полотно"
|
||||
msgstr "3D Полотно"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "Coronavirus"
|
||||
msgstr "Коронавирус"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "1bit"
|
||||
msgstr "1бит"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "Top10"
|
||||
msgstr "Топ-10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
#: src/canvasesDesc.js:28
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Наше главное полотно - огромная карта мира, вы можете ставить пиксели где "
|
||||
"хотите"
|
||||
msgstr "Наше главное полотно, огромная карта мира. Ставьте везде где хотите"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Полотно луны. Безопасное место для рисунков. Никаких флагов и крупного "
|
||||
"текста (если только это не часть рисунка) или изображений размером более 1,5 "
|
||||
"х 1,5 тысячи пикселей."
|
||||
"Полотно Луна. Безопасное место для рисунков. Без флагов или больших текстов "
|
||||
"(кроме случаев когда это часть рисунка), или когда рисунок больше 1.5тыс * "
|
||||
"1.5тыс пикселей."
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Ставьте Воксели на 3D полотне с другими пользователями"
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Размещайте воксели на 3D полотне вместе с другими игроками"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Специальное полотно для распространения осведомленности о SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Зеркало PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Зеркало PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Чёрно-белое полотно"
|
||||
msgstr "Черно-Белое полотно"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Полотно для самых активных игроков за предыдущий день. Ежедневное обновление "
|
||||
"рейтинга в 00:00 UTC."
|
||||
"Полотно для самых активных игроков прошлого дня. Ежедневный рейтинг "
|
||||
"сбрасывается в 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr ""
|
||||
"Добро пожаловать ${ name } на PixelPlanet, пожалуйста, подтвердите свою почту"
|
||||
#~ msgid "Couldn't send your message, pls log out and back in again."
|
||||
#~ msgstr ""
|
||||
#~ "Невозможно отправить ваше сообщение, пожалуйста перезайдите в аккаунт."
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Привет, ${ name }"
|
||||
#~ msgid "Could not connect to server, please try again later :("
|
||||
#~ msgstr ""
|
||||
#~ "Не получается присоедениться к серверу, пожалуйста попробуйте позже :("
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"добро пожаловать в наше маленькое сообщество тех, кто ставит пиксели, чтобы "
|
||||
"использовать свою учетную запись, вы должны подтвердить свою почту. Вы "
|
||||
"можете сделать это здесь: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Нажмите для подтверждения"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Или скопировав следующий URL:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr ""
|
||||
"Получайте удовольствие и не стесняйтесь обращаться к нам, если у вас "
|
||||
"возникнут какие-либо проблемы :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Спасибо"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Мы уже отправили вам письмо с подтверждением, вы можете запросить еще одно "
|
||||
"через ${ minLeft } минут."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Вы забыли пароль от PixelPlanet? Получите новый здесь"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Привет"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Вы запросили новый пароль. Вы можете изменить свой пароль в течение "
|
||||
"следующих 30 минут здесь: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Если вы не запрашивали это письмо, просто проигнорируйте его (IP-адрес, "
|
||||
"который запрашивал это письмо: ${ip})."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Почта не настроена на сервере"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Мы уже отправили вам письмо с инструкциями. Пожалуйста, подождите, прежде "
|
||||
"чем запрашивать другое письмо."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Не удалось найти эту почту в нашей базе данных"
|
||||
#~ msgid "I think we experienced some error :("
|
||||
#~ msgstr "Я думаю у нас вышла ошибка :("
|
||||
|
|
467
i18n/ssr-sc.po
|
@ -1,467 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: sicilian\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
|
||||
"X-Generator: Poedit 3.3.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Umpo mannari messaggia cu li proxy"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "U to paisi esti bannatu temporaniaminti ri stu canali"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Si bannatu pi ssempri, trasi nalu guilded pi appellari"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Si bannatu"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "U to provider ri l'internet esti bannatu"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Si mutatu pi n'avutri ${ timeMin } minuta"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Si mutatu pi n'avutri ${ ttl } sicunna"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Sta mannannu messaggia troppu veloci, asspittari ${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Unna a accessu a stu canali"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "A to email ava a essiri verificata pi parrari intra a chat"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Umpo mannari messaggia accussi longa"
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Piffauri usa a chat int"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Abbasta affunnari."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Mannasti na password vacanti o data mmalira"
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "U link pi ressettari a password unne chiu validu"
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Li password un cuncirunu"
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "St'utenti unnisisti nalu database"
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Password canciata."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Url mmaliru,piffauri talia l'email arre..."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "U globo 3d ri tutta a mappa"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Ammacca rui voti nalu globo pi iri in arre."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Caricannu..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PopUp ri PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Piazza pixel culurata intra na mappa a stili canvas cu avutri chistiana"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "A email umpo essiri vacanti."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "A email ava aviri aimmenu 5 carattera."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "A Email umpo aviri chiu ri 40 carattera."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "A Email ava aviri un puntu"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "A Email ava aviri na @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "U numi un po essiri vacanti."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "U numi ava essiri longa aimmenu ri rui carattera"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "U numi ava essiri chiu cuirtu ri vintisei carattera"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "U numi avi carattera invalida a tipo @, /, \\ o #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Password un rata."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "A Password ava a essiri aimmenu ri 6 carattera."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "A Password unpo aviri chiu ri 60 carattera."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Reset rila password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Resetta a password ca"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Resetta a password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Ammacca ca"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "va arre su Pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Salutamu ${ name }, po mettiri a to nova password ca:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Nova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Cunfirma a nova password"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Cunfirma"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Unsi loggatu"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Unna u pirmissu pi trasiri intra sta pagina"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Sulu li admin ponnu fari chistu"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Unsi bannatu"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Unsi mancu loggatu."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Erruri rilu server quannu loggasti fora."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Verifica pi email"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Si verificatu"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"U To codici pi verificarti j'e mmalidu o scarutu ;(, piffauri richiedi "
|
||||
"navutru."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Stu provider rila email unne valiru"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha un ratu"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "E-Mail gia usata."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Username gia pigghiatu."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Ci mittisti troppu assa, prova arre."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Rixi morto Fallisti u captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Errori rilu captcha sconosciutu"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Falli a criari un novu utenti"
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Falli a fari na sissiuni ropu a registazioni :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Unsi autenticatu."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Password sbagliata!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Account ri PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Veni mannatu nala paggina automaticamente 'n 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "O ${ clickHere } Pi gghiri arre su pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Terra"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Luna"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "Canvas 3D"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"U Canvas principali, na mappa ranni ri tuttu u munnu. Piazza unne ghie ca ti "
|
||||
"piaci"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Canvas rila luna. spaziu sicuru pi li arti. Nenti banneri ne scritti rossi "
|
||||
"(Aimmenu sa un fannu parti rilu disegnu) ne arti chiu ranni ri 1.5k x 1.5k "
|
||||
"pixels."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Piazza Voxels intra 'n canvas 3D cu l'avutri"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Canvas spiciali pi diffunniri a consapevolizza sulu SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Specchiu ri PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Specchiu ri PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Canvas 'n viancu j'e' nivuru"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"U canvas sulu pili iucatura chiu attiva d'aeri. Aggiurnamenti a 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "Binvinutu ${ name } na pixelplanet, piffauri verifica a to email"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Salutamu ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"binvinuto nala community ri niavutri pixelplacers, usa u to account, "
|
||||
"virifica a to email, u po fari ca: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Ammacca pi Verificariti"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "O copia stu url:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Addivertiti j'e' un esitari a contattarici si viri quacchi problema :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Razi"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Mannamu gia n' email pi a verifica' ni po arrichiediri navutra fra "
|
||||
"${ minLeft } minuta."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Addimenticasti a to password? arrichiedini navutra ca"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Salutamu"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr "Arrichieristi navutra password, a po canciari tra navutri 30 minuta "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Si un arrichieristi sti email, ignorala (U ip ca arrichidi sti email esti "
|
||||
"${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "A Littra unne configurata nalu server"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Ti mannamu gia' na littra culi istruziuni. Aspittassi n'anticchia pi farini "
|
||||
"mannari navutra."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Unputimu attruvari a to email nalu database"
|
|
@ -37,7 +37,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Vaš E-naslov mora biti preverjen zato, da lahko klepetate"
|
||||
|
||||
#: src/core/ChatProvider.js:331
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Za vedno ste utišani, pridružite se guilded, da se pritožite na utišavo "
|
||||
|
||||
|
@ -113,7 +113,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Uporabnik ne obstaja v naši podatkovni bazi :("
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Geslo je bilo uspešno spremenjeno."
|
||||
|
||||
#: src/routes/reset_password.js:127
|
||||
|
@ -138,7 +138,7 @@ msgstr ""
|
|||
"čez ${ minLeft } minut."
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "${ name } dobrodošel na PixelPlanetu, prosim potrdite vaš E-naslov"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
|
@ -165,7 +165,7 @@ msgstr "Ali pa tako, da kopirate naslednji naslov:"
|
|||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Imejte se lepo in ne bojte se nas kontaktirati če pridete, do kakšnih "
|
||||
"težav :)"
|
||||
|
|
|
@ -43,7 +43,7 @@ msgid "Your mail has to be verified in order to chat"
|
|||
msgstr "Tvoj e-mail treba da bude verifikovan da bi se četovalo"
|
||||
|
||||
#: src/core/ChatProvider.js:438
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Vi ste zauvek nemo, dođite u naš guilded da bi ste napravili zahtev"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
|
@ -92,7 +92,7 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr "Nalog ne postoji u našim podacima :("
|
||||
|
||||
#: src/routes/reset_password.js:87
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Lozinka uspešno promenjena"
|
||||
|
||||
#: src/routes/reset_password.js:106
|
||||
|
@ -143,7 +143,7 @@ msgstr ""
|
|||
"${ minLeft } minuta"
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"Zdravo ${ name }! Dobrodošli u PixelPlanet, molimo vas verifikujte vaš e-mail"
|
||||
|
||||
|
@ -170,7 +170,7 @@ msgstr "Ili kopirati ovaj url:"
|
|||
|
||||
#: src/core/mail.js:81
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Zabavite se i nemojte zaboraviti da nas možete kontaktirati ako vidite "
|
||||
"ikakve probleme :)"
|
483
i18n/ssr-to.po
|
@ -1,483 +0,0 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: to\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Poedit 3.3.2\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "He ʻikai lava ke ke ʻave ha ngaahi popoaki talanoa mo e fakafofonga"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr ""
|
||||
"ʻOku ʻikai ke ʻi ai ha meʻa fakataimi ʻi ho fonua mei he senolo ko ʻeni"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"ʻOku ʻikai ke ke fuʻu tokanga koe ki ai, kau ki heʻetau guilded ke apppeal "
|
||||
"ʻa e fakalongo"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "ʻOku ke banned"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "ʻOku banned hoʻo kautaha ʻInitaneti"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "ʻOku ʻikai ke ke toe ʻi ha miniti ʻe ${ timeMin }"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "ʻOku ʻikai ke ke toe ʻi ai ha sekoni ʻe ${ ttl }"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"ʻOku ke ʻoatu ha ngaahi popoaki ʻoku fuʻu vave, kuo pau ke ke tatali ki he "
|
||||
"${ waitTime }s :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "ʻOku ʻikai ke ke lava ʻo hu ki he senolo ko ʻeni"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Kuo pau ke fakapapauʻi hoʻo meili kae lava ke talanoa"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "He ʻikai lava ke ke ʻave ha popoaki fuoloa peheni :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Kātaki ʻo fakaʻaongaʻi ʻa e int channel"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Taʻofi e tafea."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Naʻá ke ʻave ha lea fufū ʻoku ʻikai fakafonu pe hala e fakamatalá :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr ""
|
||||
"ʻOku ʻikai toe ʻaonga ʻa e fehokotakiʻanga fakafoʻou ko ʻeni ʻo e lea fufuú :"
|
||||
"("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "ʻOku ʻikai tatau hoʻo ongo lea fufuú mo e :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "ʻOku ʻikai maʻu ʻa e tokotaha ngaue ʻi heʻetau faile fakakomipiuta :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Naʻe lava lelei ʻo liliu ʻa e Passowrd."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "ʻIkai tonu e :( URL Kātaki ʻo toe vakaiʻi hoʻo meilí."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DGlobe"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Ko ha kolope 3D ʻo ʻetau mape kotoa"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Lomiʻi tuʻo ua ʻi he mamani ke toe foki."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Load..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.Fun PopUp"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.Fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Fokotuʻu ʻa e lanu ʻo e lanu ʻi ha mape styled fakatataa mo e kau vaʻinga "
|
||||
"kehe ʻi he ʻInitaneti"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "He ʻikai lava ke taʻe fakafonu e ʻimeili."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr ""
|
||||
"ʻOku totonu ke ʻoua naʻa toe siʻi hifo he mataʻitohi ʻe 5 ʻa e ʻimeili."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "He ʻikai lava ke loloa ange ʻa e ʻimeili ʻi he mataʻitohi ʻe 40."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "ʻOku totonu ke ʻoua naʻa toe siʻi hifo he ʻimeili ha dot"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "ʻOku totonu ke kau ʻi he ʻimeili ha @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "ʻIkai lava ke taʻe ʻi ai ha hingoa."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Kuo pau ke mataʻitohi ʻe 2 hono lōloa ʻo e hingoá"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Kuo pau ke nounou ange ʻa e hingoá ʻi he mataʻitohi ʻe 26"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "ʻOku ʻi he hingoa ha mataʻitohi ʻoku hala hange ko @, /, \\ pe #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "ʻIkai ʻoange ha lea fufū."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Kuo pau ke ʻoua naʻa toe siʻi hifo he mataʻitohi ʻe 6 ʻa e lea fufuú."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Kuo pau ke nounou ange ʻa e lea fufuú ʻi he mataʻitohi ʻe 60."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Toe Fakafoʻou e Lea Fufuú PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Fakafoʻou heni hoʻo lea fufuú"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Toe Fakafoʻou ʻa e Lea Fufuú"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Lomiʻi heni"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "ke foki ki pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr ""
|
||||
"Malo e lelei ${ name }, te ke lava ʻo fokotuʻu heni hoʻo lea fufu foʻou:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Lea Fufū Foʻoú"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Fakapapauʻi ʻa e Lea Fufū Foʻoú"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Fakahū"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "ʻOku ʻikai ke ke hū ki he polokalamá"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "ʻOku ʻikai ngofua ke ke hū ki he peesi ko ʻení"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "ʻE lava ʻe he miniti pe ʻe taha ʻo fai ia"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "ʻOku ʻikai ke ke banned"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "ʻOku ʻikai ke ke hu ki he polokalama."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Fehalaaki ʻa e server ʻi he taimi ʻoku loka ai."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Fakapapauʻi ʻo e meilí"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Kuo fakapapauʻi he taimí ni :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"ʻOku ʻikai tonu hoʻo kouti fakapapauʻi ʻo e meilí pe kuo ʻosi e taimi "
|
||||
"ngāueʻaki :(, kātaki ʻo kole ha fika foʻou."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "ʻOku ʻikai fakangofua ʻa e kautaha ʻimeili ko ʻeni"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "ʻIkai ha Captcha ʻe foaki"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Kuo ʻosi fakaʻaongaʻi ʻa e ʻĪ-meilí."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Kuo ʻosi ngāueʻaki ʻe he tokotaha ngāue ki he polokala."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Naʻe fuʻu fuoloa hoʻo feinga."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Naʻe ʻikai ke ke lava hoʻo captcha"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Fehalaaki Captcha ʻikai ʻiloʻi"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "ʻIkai lava ʻo faʻu ha foʻou ki he polokalamá :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "ʻIkai lava ke fokotuʻu ha fakataha hili e lesisita :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "ʻOku ʻikai ke ke authenticated."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "ʻIkai tonu e lea fufuú!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Ngaahi ʻAkauni PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "ʻE toe fakafoki fakahangatonu atu koe hili 15s"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Pe ${ clickHere } ke foki ki pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Mamani"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Mahina"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Fakatataa"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Coronavirus"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Ko ʻetau tefitoʻi fakatataa, ko ha mape lahi ʻo e mamani. Tuku ʻi he feituʻu "
|
||||
"kotoa pe ʻoku ke saiʻia ai"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Fakatataa ʻo e mahina. Feituʻu malu ki he ʻati. ʻIkai ha fuka pe fakamatala "
|
||||
"lahi (tuku kehe kapau ko ha konga ʻo e ʻati) pe ʻaati lahi ange ʻi he 1.5 k "
|
||||
"x 1.5 k."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Fokotuʻu Voxels ʻi ha fakatataa 3D mo e niʻihi kehe"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Fakatataa makehe ke fakamafola hono ʻiloʻi ʻo e SARS-CoV2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Sioʻata ʻo e PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Sioʻata ʻo e PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Fakatataa ʻuliʻuli mo hinehina"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Ko ha fakatataa maʻa e kau vaʻinga malohi taha mei he ʻaho kimuʻa. Ngaahi "
|
||||
"fakamatala fakamuimuitaha ʻi he 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
"Talitali lelei ʻa e ${ name } ki he PixelPlanet, plese fakapapauʻi hoʻo meili"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Malo e lelei ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"talitali lelei ki homau kiʻi kolo pixelplacers, ke fakaʻaongaʻi hoʻo "
|
||||
"ʻakauni, kuo pau ke ke fakapapauʻi hoʻo meili. Te ke lava ʻo fai ia heni: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Lomiʻi ke Fakapapauʻi"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Pe hiki tatau ʻa e URL ko ʻeni:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
"Fiefia pea ʻoua naʻa ke momou ke fetuʻutaki mai kiate kimautolu kapau te ke "
|
||||
"e encouter ha faʻahinga palopalema :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Malo"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Kuo mau ʻosi ʻoatu ha meili fakapapauʻi, te ke lava ʻo kole ha taha ʻi he "
|
||||
"miniti ʻe ${ minLeft }."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Naʻe ngalo hoʻo lea fufuu ki he PixelPlanet? Maʻu ha taha foʻou heni"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Malo e lelei"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Naʻá ke kole ke maʻu mai ha lea fufū foʻou. Te ke lava ʻo liliu hoʻo lea "
|
||||
"fufuu ʻi he miniti ʻe 30 ka hoko: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Kapau naʻe ʻikai ke ke kole ʻa e meili ko ʻeni, kataki ʻo tukunoaʻi pe ia "
|
||||
"(ko e ip naʻa ne kole ʻa e meili ko ʻeni ko e ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "ʻOku ʻikai fakapolokalamaʻi ʻa e meili ʻi he server"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Kuo mau ʻosi ʻoatu ha meili mo ha ngaahi fakahinohino. Kātaki ʻo tatali "
|
||||
"kimuʻa pea toki kole mai ha toe meili ʻe taha."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "ʻIkai lava ke maʻu e meili ko ʻeni ʻi heʻemau faile fakakomipiuta"
|
737
i18n/ssr-tr.po
|
@ -10,412 +10,116 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.0.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
#: src/core/ChatProvider.js:370
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Proxy ile mesaj gönderemezsin"
|
||||
msgstr "Proxy ile sohbete mesaj atamazsın"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Ülken geçici süreliğine susturuldu"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgstr "Kalıcı olarak susturuldun, kaldırılması için Guilded sunucumuza katıl"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Banlandın"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "İnternet sağlayıcın banlandı"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "${ timeMin } dakikalığına susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "${ muted } saniyeliğine susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#: src/core/ChatProvider.js:384
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr "Çok hızlı mesaj gönderiyorsun, ${ waitTime } saniye beklemen gerekiyor"
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
#: src/core/ChatProvider.js:388
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Bu kanala erişimin yok"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
#: src/core/ChatProvider.js:404
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Onaylı bir E-Posta adresin olmadan sohbete katılamazsın"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
#: src/core/ChatProvider.js:409
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr "Kalıcı olarak susturuldun, kaldırmak için Guilded sunucumuza katıl"
|
||||
|
||||
#: src/core/ChatProvider.js:414
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "${ timeMin } dakikalığına susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:416
|
||||
msgid "You are muted for another ${ muted } seconds"
|
||||
msgstr "${ muted } saniyeliğine susturuldun"
|
||||
|
||||
#: src/core/ChatProvider.js:424
|
||||
msgid "Ow no! Spam protection decided to mute you"
|
||||
msgstr "Olamaz! Spam koruması seni susturdu"
|
||||
|
||||
#: src/core/ChatProvider.js:435
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Bu kadar uzun bir mesaj gönderemezsin :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "Please use int channel"
|
||||
msgstr "Lütfen int sohbet kanalını kullanın"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your country is temporary muted from chat"
|
||||
msgstr "Ülken sohbetten geçici süreliğine susturuldu"
|
||||
|
||||
#: src/core/ChatProvider.js:451
|
||||
msgid "Stop flooding."
|
||||
msgstr "Flood yapmayı bırak."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
#: src/routes/reset_password.js:40
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Boş bir parola gönderdin veya geçersiz data :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
#: src/routes/reset_password.js:52
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Parola değiştirme bağlantısı artık geçerli değil :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
#: src/routes/reset_password.js:63
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Parolaların uyuşmuyor"
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
#: src/routes/reset_password.js:78
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Kullanıcı veri tabanımızda bulunamadı :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
#: src/routes/reset_password.js:90
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Parolanız başarılı bir şekilde değiştirildi."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
#: src/routes/reset_password.js:109
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Geçersiz bağlantı :( Lütfen postanızı tekrar kontrol ediniz."
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3BKüresel"
|
||||
#: src/routes/reset_password.js:122
|
||||
msgid ""
|
||||
"This passwort reset link is wrong or already expired, please request a new "
|
||||
"one (Note: you can use those links just once)"
|
||||
msgstr ""
|
||||
"Bu parola değiştirme bağlantısı yanlış veya çoktan sona erdi, lütfen yeni "
|
||||
"bir talepte bulun (Not: bu bağlantıları tek seferlik kullanabilirsin)"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Tüm haritamızın 3 boyutlu küreseli"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
#: src/ssr-components/Globe.jsx:44
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Küreye çift tıklayarak geri dön."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
#: src/ssr-components/Globe.jsx:45
|
||||
msgid "Loading..."
|
||||
msgstr "Yükleniyor..."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ppfun"
|
||||
#: src/ssr-components/Globe.jsx:51
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3BKüresel"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "PixelPlanet.fun PopUp"
|
||||
#: src/ssr-components/Globe.jsx:52
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "Tüm haritamızın 3 boyutlu küreseli"
|
||||
|
||||
#: src/ssr/Main.jsx:67
|
||||
msgid "PixelPlanet.Fun"
|
||||
#: src/ssr-components/Main.jsx:70
|
||||
msgid "PixelPlanet.fun"
|
||||
msgstr "PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/Main.jsx:68
|
||||
#: src/ssr-components/Main.jsx:72
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Diğer oyuncularla beraber harita tarzı tuvallerde renkli pikseller atın"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Mail adresi boş bırakılamaz."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Mail adresi en az 5 karakterden oluşmalıdır."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Mail adresi 40 karakterden fazla olamaz."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Mail adresi içerisinde nokta bulundurmalıdır"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Mail adresi içerisinde @ bulundurmalıdır"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Kullanıcı adı boş bırakılamaz."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Kullanıcı adı 2 karakterden fazla olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Kullanıcı adı 26 karakterden az olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Kullanıcı adı @, /, \\ veya # gibi geçersiz karakter bulunduruyor"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Parola girilmedi."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Parola en az 6 karakterden oluşmalıdır."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Parolan 60 karakteri geçemez."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Parola Yenileme"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Parolanı buradan yenileyebilirsin"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Parola Yenile"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Buraya tıkla"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "pixelplanet'e dön"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Merhaba ${ name }, parolanı burada ayarlayabilirsin:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Yeni Parola"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Yeni Parolayı Onayla"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Gönder"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Giriş yapmadın"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Bu sayfaya erişimin yok"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Sadece adminler bunu yapabilir"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Banlanmadın"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Henüz oturum açmadın."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Oturum kapatılırken sunucu hatası oluştu."
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Mail adresi doğrulaması"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Artık hesabın doğrulandı :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Doğrulama kodun geçersiz veya süresi doldu :(, lütfen yeni bir talepte bulun."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Bu e-posta sağlayıcısına izin verilmiyor"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha girilmedi"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Mail adresi kullanımda."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Kullanıcı adı kullanımda."
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Fazla uzun sürdü, tekrar dene."
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Captcha'yı yanlış girdin"
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Bilinmeyen Captcha Hatası"
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Yeni hesap oluşturulamadı :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Hesap oluştururken bir hata meydana geldi :("
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Kimliğiniz doğrulanamadı."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Yanlış parola!"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Hesapları"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "15 saniye içerisinde otomatik olarak yönlendirileceksin"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Veya ${ clickHere } pixelplanet'e dönebilirsin"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Dünya"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Ay"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3B Tuval"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Koronavirüs"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Ana tuvalimiz devasa dünya haritası. İstediğin yere piksel atabilirsin"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Ay tuvali. Eserler için güvenilir bir yer. Bayraklar veya büyük yazılar "
|
||||
"(eserin parçası değilse) veya 1.5k x 1.5k pikselden oluşan eserler yasaktır."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "3B tuvalde diğer oyuncularla birlikte küp pikseller at"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Koronavirüs farkındalığını yaymak için özel olarak yapılan tuval"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "PixelZone'un aynası"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "PixelCanvas'ın aynası"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Siyah-beyaz tuval"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Geçen günün en aktif oyuncuları için yapılmış tuval. Sıralama her gün 00:00 "
|
||||
"UTC'da güncellenir."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgstr "PixelPlanet'e hoş geldin ${ name }, lütfen mail adresini doğrula"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Merhaba ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"piksel atanlardan oluşan topluluğumuza hoş geldin, hesabını kullanmak için "
|
||||
"mail adresini doğrula. Buradan yapabilirsin: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Doğrulamak için Tıkla"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Veya bağlantıyı kopyalayarak:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgstr "Eğlenmene bak ve problem yaşarsan bize ulaşmaktan çekinme :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Teşekkürler"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#: src/core/mail.js:65
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
|
@ -424,15 +128,61 @@ msgstr ""
|
|||
"Size zaten doğrulara postası gönderildi, ${ minLeft } dakika içinde yenisini "
|
||||
"talep edebilirsiniz."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "PixelPlanet'e hoş geldin ${ name }, lütfen mail adresini doğrula"
|
||||
|
||||
#: src/core/mail.js:77
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Merhaba ${ name }"
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"piksel atanlardan oluşan topluluğumuza hoş geldin, hesabını kullanmak için "
|
||||
"mail adresini doğrula. Buradan yapabilirsin: "
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid "Click to Verify"
|
||||
msgstr "Doğrulamak için Tıkla"
|
||||
|
||||
#: src/core/mail.js:78 src/core/mail.js:128
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Veya bağlantıyı kopyalayarak:"
|
||||
|
||||
#: src/core/mail.js:79
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Eğlenmene bak ve problem yaşarsan bize ulaşmaktan çekinme :)"
|
||||
|
||||
#: src/core/mail.js:80 src/core/mail.js:130
|
||||
msgid "Thanks"
|
||||
msgstr "Teşekkürler"
|
||||
|
||||
#: src/core/mail.js:98
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Sana çoktan talimatlar içeren bir posta gönderdik. Lütfen başka bir posta "
|
||||
"talep etmeden önce bekle."
|
||||
|
||||
#: src/core/mail.js:106
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Bu mail adresini veri tabanımızda bulamadık"
|
||||
|
||||
#: src/core/mail.js:125
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "PixelPlanet parolanı unuttun mu? Buradan yenisini alabilirsin"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
#: src/core/mail.js:127
|
||||
msgid "Hello"
|
||||
msgstr "Merhaba"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
#: src/core/mail.js:128
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
|
@ -440,43 +190,270 @@ msgstr ""
|
|||
"Yeni bir parola talebinde bulundun. Parolanı 30 dakika içinde buradan "
|
||||
"değiştirebilirsin:: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#: src/core/mail.js:128 src/ssr-components/PasswordReset.jsx:19
|
||||
#: src/ssr-components/PasswordReset.jsx:28
|
||||
msgid "Reset Password"
|
||||
msgstr "Parola Yenile"
|
||||
|
||||
#: src/core/mail.js:129
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Eğer bu postayı talep etmediysen lütfen görmezden gel (bu postayı talep eden "
|
||||
"Eğer bu maili talep etmediysen lütfen görmezden gel (bu postayı talep eden "
|
||||
"ip: ${ ip })"
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Posta sunucuda yapılandırılmamış"
|
||||
#: src/ssr-components/PasswordReset.jsx:21
|
||||
#: src/ssr-components/RedirectionPage.jsx:15
|
||||
msgid "Click here"
|
||||
msgstr "Buraya tıkla"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
#: src/ssr-components/PasswordReset.jsx:22
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "pixelplanet'e dön"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:29
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Merhaba ${ name }, parolanı burada ayarlayabilirsin:"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:33
|
||||
msgid "New Password"
|
||||
msgstr "Yeni Parola"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:41
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Yeni Parolayı Onayla"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:47
|
||||
msgid "Submit"
|
||||
msgstr "Gönder"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:52
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "PixelPlanet.fun Parola Yenileme"
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:53
|
||||
msgid "Reset your password here"
|
||||
msgstr "Parolanı buradan yenileyebilirsin"
|
||||
|
||||
#: src/routes/api/captcha.js:22
|
||||
msgid "No captcha text given"
|
||||
msgstr "Captcha metni girilmedi"
|
||||
|
||||
#: src/routes/api/captcha.js:27
|
||||
msgid "No captcha id given"
|
||||
msgstr "Captcha id'si girilmedi"
|
||||
|
||||
#: src/routes/api/auth/register.js:61 src/routes/api/captcha.js:41
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Fazla uzun sürdü, tekrar dene."
|
||||
|
||||
#: src/routes/api/auth/register.js:64 src/routes/api/captcha.js:47
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Captcha'yı yanlış girdin"
|
||||
|
||||
#: src/routes/api/auth/register.js:67 src/routes/api/captcha.js:53
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Bilinmeyen Captcha Hatası"
|
||||
|
||||
#: src/routes/api/captcha.js:60
|
||||
msgid "Server error occured"
|
||||
msgstr "Sunucu hatası oluştu"
|
||||
|
||||
#: src/routes/api/modtools.js:52
|
||||
msgid "You are not logged in"
|
||||
msgstr "Giriş yapmadın"
|
||||
|
||||
#: src/routes/api/modtools.js:64
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Bu sayfaya erişimin yok"
|
||||
|
||||
#: src/routes/api/modtools.js:166
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Sadece adminler bunu yapabilir"
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Mail adresi boş bırakılamaz."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Mail adresi en az 5 karakterden oluşmalıdır."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Mail adresi 40 karakterden fazla olamaz."
|
||||
|
||||
#: src/utils/validation.js:21
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Mail adresi içerisinde nokta bulundurmalıdır"
|
||||
|
||||
#: src/utils/validation.js:23
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Mail adresi içerisinde @ bulundurmalıdır"
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Kullanıcı adı boş bırakılamaz."
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Kullanıcı adı 2 karakterden fazla olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:32
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Kullanıcı adı 26 karakterden az olmalıdır"
|
||||
|
||||
#: src/utils/validation.js:39
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Kullanıcı adı @, /, \\ veya # gibi geçersiz karakter bulunduruyor"
|
||||
|
||||
#: src/utils/validation.js:54
|
||||
msgid "No password given."
|
||||
msgstr "Parola girilmedi."
|
||||
|
||||
#: src/utils/validation.js:57
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Parola en az 6 karakterden oluşmalıdır."
|
||||
|
||||
#: src/utils/validation.js:60
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Parolan 60 karakteri geçemez."
|
||||
|
||||
#: src/routes/api/auth/register.js:33
|
||||
msgid "No Captcha given"
|
||||
msgstr "Captcha Girilmedi"
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Mail adresi kullanımda."
|
||||
|
||||
#: src/routes/api/auth/register.js:38
|
||||
msgid "Username already in use."
|
||||
msgstr "Kullanıcı adı kullanımda."
|
||||
|
||||
#: src/routes/api/auth/register.js:91
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Yeni hesap oluşturulamadı :("
|
||||
|
||||
#: src/routes/api/auth/register.js:106
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Hesap oluştururken bir hata meydana geldi :("
|
||||
|
||||
#: src/routes/api/auth/logout.js:13
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Henüz oturum açmadın."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:41
|
||||
#: src/routes/api/auth/change_passwd.js:37
|
||||
#: src/routes/api/auth/delete_account.js:38
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Kimliğiniz doğrulanamadı."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:50
|
||||
#: src/routes/api/auth/change_passwd.js:46
|
||||
#: src/routes/api/auth/delete_account.js:48
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Yanlış parola!"
|
||||
|
||||
#: src/routes/api/auth/verify.js:25 src/routes/api/auth/verify.js:32
|
||||
msgid "Mail verification"
|
||||
msgstr "Mail adresi doğrulaması"
|
||||
|
||||
#: src/routes/api/auth/verify.js:26
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Artık hesabın doğrulandı :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:32
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Halihazırda talimatlar içeren bir posta gönderildi. Lütfen başka bir posta "
|
||||
"talep etmeden önce bekle."
|
||||
"Doğrulama kodun geçersiz veya süresi doldu :(, lütfen yeni bir talepte bulun."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Bu mail adresini veri tabanımızda bulamadık"
|
||||
#: src/ssr-components/RedirectionPage.jsx:20
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "15 saniye içerisinde otomatik olarak yönlendirileceksin"
|
||||
|
||||
#~ msgid "Ow no! Spam protection decided to mute you"
|
||||
#~ msgstr "Olamaz! Spam koruması seni susturdu"
|
||||
#: src/ssr-components/RedirectionPage.jsx:21
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Veya ${ clickHere } pixelplanet'e dönebilirsin"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This passwort reset link is wrong or already expired, please request a "
|
||||
#~ "new one (Note: you can use those links just once)"
|
||||
#~ msgstr ""
|
||||
#~ "Bu parola değiştirme bağlantısı yanlış veya çoktan sona erdi, lütfen yeni "
|
||||
#~ "bir talepte bulun (Not: bu bağlantıları tek seferlik kullanabilirsin)"
|
||||
#: src/ssr-components/RedirectionPage.jsx:25
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "PixelPlanet.fun Hesapları"
|
||||
|
||||
#~ msgid "No captcha text given"
|
||||
#~ msgstr "Captcha metni girilmedi"
|
||||
#: src/canvasesDesc.js:18
|
||||
msgid "Earth"
|
||||
msgstr "Dünya"
|
||||
|
||||
#~ msgid "No captcha id given"
|
||||
#~ msgstr "Captcha id'si girilmedi"
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Moon"
|
||||
msgstr "Ay"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "3D Canvas"
|
||||
msgstr "3B Tuval"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "Coronavirus"
|
||||
msgstr "Koronavirüs"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "1bit"
|
||||
msgstr "1bit"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "Top10"
|
||||
msgstr "Top10"
|
||||
|
||||
#: src/canvasesDesc.js:28
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr "Ana tuvalimiz devasa dünya haritası. İstediğin yere piksel atabilirsin"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Ay tuvali. Eserler için güvenilir bir yer. Bayraklar veya büyük yazılar "
|
||||
"(eserin parçası değilse) veya 1.5k x 1.5k pikselden oluşan eserler yasaktır."
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "3B tuvalde diğer oyuncularla birlikte küp pikseller at"
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Koronavirüs farkındalığını yaymak için özel olarak yapılan tuval"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "PixelZone'un aynası"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "PixelCanvas'ın aynası"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Siyah-beyaz tuval"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Geçen günün en aktif oyuncuları için yapılmış tuval. Sıralama her gün 00:00 "
|
||||
"UTC'da güncellenir."
|
||||
|
|
502
i18n/ssr-uk.po
Normal file
|
@ -0,0 +1,502 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: uk\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.1.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:434
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Ви не можете спілкуватись в чаті з проксі"
|
||||
|
||||
#: src/core/ChatProvider.js:436
|
||||
msgid "Your country is temporary muted from this chat channel"
|
||||
msgstr "Вашу країну тимчасово замучено в цьому чаті"
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
"Вам назавжди заборонено писати в чат, заходьте в наш guilded, щоб апелювати "
|
||||
"свій мут"
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
msgid "You are banned"
|
||||
msgstr "Ви забанені"
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your Internet Provider is banned"
|
||||
msgstr "Ваш інтернет-провайдер забанений"
|
||||
|
||||
#: src/core/ChatProvider.js:448
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr "Ви в муті ще ${ timeMin } хвилин"
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr "Ви в муті ще ${ ttl } секунд"
|
||||
|
||||
#: src/core/ChatProvider.js:467
|
||||
#, javascript-format
|
||||
msgid "You are sending messages too fast, you have to wait ${ waitTime }s :("
|
||||
msgstr ""
|
||||
"Ви надсилаєте повідомлення занадто швидко, вам потрібно почекати "
|
||||
"${ waitTime }с :("
|
||||
|
||||
#: src/core/ChatProvider.js:471
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr "Ви не маєте доступу до цього каналу"
|
||||
|
||||
#: src/core/ChatProvider.js:488
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr "Ваша пошта повинна бути підтверджена для спілкування"
|
||||
|
||||
#: src/core/ChatProvider.js:498
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr "Ви не можете надсилати настільки великі повідомлення :("
|
||||
|
||||
#: src/core/ChatProvider.js:502
|
||||
msgid "Please use int channel"
|
||||
msgstr "Будь ласка, використовуйте міжнародний чат"
|
||||
|
||||
#: src/core/ChatProvider.js:510
|
||||
msgid "Stop flooding."
|
||||
msgstr "Досить флудити."
|
||||
|
||||
#: src/routes/reset_password.js:39
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr "Ви надіслали порожній пароль або недійсні дані :("
|
||||
|
||||
#: src/routes/reset_password.js:51
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr "Це посилання для скидання пароля вже недійсне :("
|
||||
|
||||
#: src/routes/reset_password.js:62
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr "Ваші паролі не збігаються :("
|
||||
|
||||
#: src/routes/reset_password.js:77
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr "Такого користувача немає в нашій базі даних :("
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr "Пароль успішно змінено."
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr "Некоректне посилання :( Будь ласка, перевірте свою пошту знову."
|
||||
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr "ппфан"
|
||||
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr "Розгортання Піксельної Планети"
|
||||
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr "PixelPlanet.Fun 3DГлобус"
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr "3D глобус всієї карти"
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr "Зробіть дабл клік по глобусу, щоб повернутись."
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr "Завантаження..."
|
||||
|
||||
#: src/ssr/Main.jsx:59
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr "PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/Main.jsx:60
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
"Ставте кольорові пікселі на полотні в стилі карти разом з іншими гравцями"
|
||||
|
||||
#: src/utils/validation.js:17
|
||||
msgid "Email can't be empty."
|
||||
msgstr "Електронна адреса не може бути порожньою."
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr "Електронна адреса повинна мати не менше 5 символів."
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr "Електронна адреса не може містити більше 40 символів."
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr "Електронна адреса повинна містити принаймні крапку"
|
||||
|
||||
#: src/utils/validation.js:22
|
||||
msgid "Email should contain a @"
|
||||
msgstr "Електронна адреса повинна містити @"
|
||||
|
||||
#: src/utils/validation.js:29
|
||||
msgid "Name can't be empty."
|
||||
msgstr "Нікнейм не може бути порожнім."
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr "Нікнейм має містити щонайменше 2 символи"
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr "Нікнейм не має перевищувати 26 символів"
|
||||
|
||||
#: src/utils/validation.js:38
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr "Нікнейм містить некоректний символ, такий як @, /, \\ або #"
|
||||
|
||||
#: src/utils/validation.js:53
|
||||
msgid "No password given."
|
||||
msgstr "Пароль не надано."
|
||||
|
||||
#: src/utils/validation.js:56
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr "Пароль повинен містити щонайменше 6 символів."
|
||||
|
||||
#: src/utils/validation.js:59
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr "Пароль не має перевищувати 60 символів."
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:20 src/ssr/PasswordReset.jsx:40
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr "Скидання пароля PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:21 src/ssr/PasswordReset.jsx:41
|
||||
msgid "Reset your password here"
|
||||
msgstr "Скиньте свій пароль тут"
|
||||
|
||||
#: src/core/MailProvider.js:105 src/ssr/PasswordReset.jsx:28
|
||||
#: src/ssr/PasswordReset.jsx:49
|
||||
msgid "Reset Password"
|
||||
msgstr "Скинути пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30 src/ssr/RedirectionPage.jsx:12
|
||||
msgid "Click here"
|
||||
msgstr "Клацни тут"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:30
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr "щоб повернутись на pixelplanet"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:50
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr "Привіт, ${ name }, ти можеш змінити свій пароль тут:"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:54
|
||||
msgid "New Password"
|
||||
msgstr "Новий пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:60
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Підтвердити новий пароль"
|
||||
|
||||
#: src/ssr/PasswordReset.jsx:65
|
||||
msgid "Submit"
|
||||
msgstr "Підтвердити"
|
||||
|
||||
#: src/routes/api/auth/register.js:59 src/routes/api/captcha.js:34
|
||||
msgid "You took too long, try again."
|
||||
msgstr "Минуло занадто багато часу, спробуйте ще раз."
|
||||
|
||||
#: src/routes/api/auth/register.js:62 src/routes/api/captcha.js:39
|
||||
msgid "You failed your captcha"
|
||||
msgstr "Ви не пройшли капчу"
|
||||
|
||||
#: src/routes/api/captcha.js:43
|
||||
msgid "No captcha text given"
|
||||
msgstr "Текст капчі не надано"
|
||||
|
||||
#: src/routes/api/captcha.js:47
|
||||
msgid "No captcha id given"
|
||||
msgstr "ID капчі не надано"
|
||||
|
||||
#: src/routes/api/auth/register.js:65 src/routes/api/captcha.js:51
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr "Невідома помилка з капчею"
|
||||
|
||||
#: src/routes/api/captcha.js:57
|
||||
msgid "Server error occured"
|
||||
msgstr "Помилка серверу"
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr "Ви не авторизовані"
|
||||
|
||||
#: src/routes/api/modtools.js:65
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr "Ви не маєте доступу до цієї сторінки"
|
||||
|
||||
#: src/routes/api/modtools.js:207
|
||||
msgid "Just admins can do that"
|
||||
msgstr "Це можуть робити тільки адміни"
|
||||
|
||||
#: src/routes/api/baninfo.js:32
|
||||
msgid "You are not banned"
|
||||
msgstr "Ви не забанені"
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr "Ви навіть не авторизовані."
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55 src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr "Помилка сервера під час виходу."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr "Ви не авторизовані."
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr "Неправильний пароль!"
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21 src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr "Цей постачальник електронної пошти заборонений"
|
||||
|
||||
#: src/routes/api/auth/register.js:31
|
||||
msgid "No Captcha given"
|
||||
msgstr "Капча не надана"
|
||||
|
||||
#: src/routes/api/auth/register.js:34
|
||||
msgid "E-Mail already in use."
|
||||
msgstr "Ця пошта вже використовується."
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "Username already in use."
|
||||
msgstr "Цей нікнейм вже використовується."
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr "Не вдалося створити нового користувача :("
|
||||
|
||||
#: src/routes/api/auth/register.js:105
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr "Не вдалося встановити сесію після реєстрації :("
|
||||
|
||||
#: src/routes/api/auth/verify.js:26 src/routes/api/auth/verify.js:35
|
||||
msgid "Mail verification"
|
||||
msgstr "Підтвердження пошти"
|
||||
|
||||
#: src/routes/api/auth/verify.js:27
|
||||
msgid "You are now verified :)"
|
||||
msgstr "Тепер ви верифіковані :)"
|
||||
|
||||
#: src/routes/api/auth/verify.js:35
|
||||
msgid ""
|
||||
"Your mail verification code is invalid or already expired :(, please request "
|
||||
"a new one."
|
||||
msgstr ""
|
||||
"Ваш код для підтвердження пошти недійсний або застарів :(, будь ласка, "
|
||||
"зробіть запит нового."
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr "Аккаунти PixelPlanet.fun"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:29
|
||||
msgid "You will be automatically redirected after 15s"
|
||||
msgstr "Через 15 секунд ви будете автоматично перенаправлені"
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:30
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr "Або ${clickHere}, щоб повернутись на pixelplanet"
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Earth"
|
||||
msgstr "Земля"
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "Moon"
|
||||
msgstr "Місяць"
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "3D Canvas"
|
||||
msgstr "3D Полотно"
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "Coronavirus"
|
||||
msgstr "Коронавірус"
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelZone"
|
||||
msgstr "PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "PixelCanvas"
|
||||
msgstr "PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "1bit"
|
||||
msgstr "1біт"
|
||||
|
||||
#: src/canvasesDesc.js:26
|
||||
msgid "Top10"
|
||||
msgstr "Топ-10"
|
||||
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
"Наше головне полотно, величезна карта світу. Ставте пікселі де захочете"
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of art) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
"Місячне полотно. Безпечне місце для малюнків. Без прапорів, або великого "
|
||||
"тексту (якщо це не частина арту), або малюнків більше 1.5тис. х 1.5тис. "
|
||||
"пікселів."
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr "Ставте вокселі на 3D-полотні разом з іншими"
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr "Спеціальне полотно для поширення інформації про SARS-CoV-2"
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr "Дзеркало PixelZone"
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr "Дзеркало PixelCanvas"
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr "Чорно-біле полотно"
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
"Полотно для найактивніших гравців минулого дня. Щоденний рейтинг обнулюється "
|
||||
"о 00:00 UTC."
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr "${ name }, вітаємо на PixelPlanet, будь ласка, підтвердьте свою пошту"
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
msgid "Hello ${ name }"
|
||||
msgstr "Привіт, ${ name }"
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid ""
|
||||
"welcome to our little community of pixelplacers, to use your account, you "
|
||||
"have to verify your mail. You can do that here: "
|
||||
msgstr ""
|
||||
"вітаємо в нашій маленькій спільноті піксельних гравців, щоб використовувати "
|
||||
"свій аккаунт, вам потрібно підтвердити свою пошту. Ви можете зробити це тут: "
|
||||
|
||||
#: src/core/MailProvider.js:68
|
||||
msgid "Click to Verify"
|
||||
msgstr "Клацни для підтвердження"
|
||||
|
||||
#: src/core/MailProvider.js:68 src/core/MailProvider.js:105
|
||||
msgid "Or by copying following url:"
|
||||
msgstr "Або перейди по цьому посиланню:"
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid ""
|
||||
"Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr "Веселіться і не соромтеся писати нам, якщо у вас виникли проблеми :)"
|
||||
|
||||
#: src/core/MailProvider.js:70 src/core/MailProvider.js:107
|
||||
msgid "Thanks"
|
||||
msgstr "Дякую"
|
||||
|
||||
#: src/core/MailProvider.js:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
"Ми вже надіслали вам лист для підтвердження, ви можете зробити запит нового "
|
||||
"через ${ minLeft } хвилин."
|
||||
|
||||
#: src/core/MailProvider.js:103
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr "Ви забули свій пароль до PixelPlanet? Отримайте новий тут"
|
||||
|
||||
#: src/core/MailProvider.js:104
|
||||
msgid "Hello"
|
||||
msgstr "Привіт"
|
||||
|
||||
#: src/core/MailProvider.js:105
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
"Ви зробили запит нового пароля. Ви можете його змінити протягом наступних 30 "
|
||||
"хвилин тут: "
|
||||
|
||||
#: src/core/MailProvider.js:106
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"If you did not request this mail, please just ignore it (the ip that "
|
||||
"requested this mail was ${ ip })."
|
||||
msgstr ""
|
||||
"Якщо ви не робили запит цього листа, просто проігноруйте його (IP-адреса, з "
|
||||
"якої зробили запит цього листа - ${ ip })."
|
||||
|
||||
#: src/core/MailProvider.js:114
|
||||
msgid "Mail is not configured on the server"
|
||||
msgstr "Не налаштована пошта сервера"
|
||||
|
||||
#: src/core/MailProvider.js:122
|
||||
msgid ""
|
||||
"We already sent you a mail with instructions. Please wait before requesting "
|
||||
"another mail."
|
||||
msgstr ""
|
||||
"Ми вже надіслали вам лист із інструкціями. Зачекайте, перш ніж робити запит "
|
||||
"іншого листа."
|
||||
|
||||
#: src/core/MailProvider.js:130
|
||||
msgid "Couldn't find this mail in our database"
|
||||
msgstr "Не можемо знайти цю пошту в нашій базі данних"
|
||||
|
||||
#~ msgid "Ow no! Spam protection decided to mute you"
|
||||
#~ msgstr "О ні! Спам-захист вирішив дати вам мут"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This passwort reset link is wrong or already expired, please request a "
|
||||
#~ "new one (Note: you can use those links just once)"
|
||||
#~ msgstr ""
|
||||
#~ "Це посилання для скидання паролю неправильне або вже застаріле, будь "
|
||||
#~ "ласка, зробіть запит нового (Примітка: ви можете використовувати ці "
|
||||
#~ "посилання лише один раз)"
|
||||
|
||||
#~ msgid "Couldn't send your message, pls log out and back in again."
|
||||
#~ msgstr ""
|
||||
#~ "Не можемо надіслати твоє повідомлення, будь ласка, вийди і зайди в "
|
||||
#~ "аккаунт знову."
|
|
@ -12,7 +12,7 @@ msgid "Your country is temporary muted from this chat channel"
|
|||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "You are permanently muted, join our guilded to appeal the mute"
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:441
|
||||
|
@ -29,7 +29,6 @@ msgid "You are muted for another ${ timeMin } minutes"
|
|||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:450
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ ttl } seconds"
|
||||
msgstr ""
|
||||
|
||||
|
@ -75,42 +74,42 @@ msgid "User doesn't exist in our database :("
|
|||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:89
|
||||
msgid "Password successfully changed."
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:108
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:37
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:38
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:51
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:52
|
||||
msgid "Loading..."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/PopUp.jsx:55
|
||||
#: src/ssr/PopUp.jsx:58
|
||||
msgid "ppfun"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/PopUp.jsx:56
|
||||
#: src/ssr/PopUp.jsx:59
|
||||
msgid "PixelPlanet.Fun PopUp"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Main.jsx:64
|
||||
#: src/ssr/Globe.jsx:32
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:33
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:46
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Globe.jsx:47
|
||||
msgid "Loading..."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Main.jsx:59
|
||||
msgid "PixelPlanet.Fun"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/Main.jsx:65
|
||||
#: src/ssr/Main.jsx:60
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
|
||||
|
@ -204,6 +203,33 @@ msgstr ""
|
|||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
#: src/routes/api/captcha.js:34
|
||||
msgid "You took too long, try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
#: src/routes/api/captcha.js:39
|
||||
msgid "You failed your captcha"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:43
|
||||
msgid "No captcha text given"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:47
|
||||
msgid "No captcha id given"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
#: src/routes/api/captcha.js:51
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:57
|
||||
msgid "Server error occured"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/modtools.js:53
|
||||
msgid "You are not logged in"
|
||||
msgstr ""
|
||||
|
@ -220,7 +246,28 @@ msgstr ""
|
|||
msgid "You are not banned"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:22
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:55
|
||||
#: src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:43
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:35
|
||||
msgid "You are not authenticated."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:52
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:45
|
||||
msgid "Incorrect password!"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:21
|
||||
#: src/routes/api/auth/register.js:24
|
||||
msgid "This email provider is not allowed"
|
||||
msgstr ""
|
||||
|
@ -237,18 +284,6 @@ msgstr ""
|
|||
msgid "Username already in use."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:59
|
||||
msgid "You took too long, try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:62
|
||||
msgid "You failed your captcha"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:65
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:89
|
||||
msgid "Failed to create new user :("
|
||||
msgstr ""
|
||||
|
@ -272,35 +307,6 @@ msgid ""
|
|||
"request a new one."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/logout.js:11
|
||||
msgid "You are not even logged in."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:65
|
||||
#: src/routes/api/auth/logout.js:20
|
||||
msgid "Server error when logging out."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:44
|
||||
#: src/routes/api/auth/change_passwd.js:34
|
||||
#: src/routes/api/auth/delete_account.js:36
|
||||
msgid "You are not authenticated."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:53
|
||||
#: src/routes/api/auth/change_passwd.js:43
|
||||
#: src/routes/api/auth/delete_account.js:55
|
||||
msgid "Incorrect password!"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/delete_account.js:46
|
||||
msgid "Muted users can not delete their account."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/change_mail.js:62
|
||||
msgid "Muted users can not do this."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr/RedirectionPage.jsx:19
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr ""
|
||||
|
@ -346,59 +352,48 @@ msgstr ""
|
|||
msgid "Top10"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:27
|
||||
msgid "Thoia"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
#: src/canvasesDesc.js:29
|
||||
msgid "Our main canvas, a huge map of the world. Place everywhere you like"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid ""
|
||||
"Moon canvas. Safe space for art. No flags or large text (unless part of "
|
||||
"art) or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:35
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:36
|
||||
#: src/canvasesDesc.js:35
|
||||
msgid "Black and White canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:37
|
||||
#: src/canvasesDesc.js:36
|
||||
msgid ""
|
||||
"A canvas for the most active players from the the previous day. Daily "
|
||||
"ranking updates at 00:00 UTC."
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:38
|
||||
msgid ""
|
||||
"Thoia World Canvas. Advanced fictional worldbuilding and arts. Abandon the "
|
||||
"old world and all it entails."
|
||||
msgstr ""
|
||||
|
||||
#: src/core/MailProvider.js:66
|
||||
#, javascript-format
|
||||
msgid "Welcome ${ name } to PixelPlanet, please verify your mail"
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/MailProvider.js:67
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr ""
|
||||
|
||||
|
@ -418,7 +413,7 @@ msgid "Or by copying following url:"
|
|||
msgstr ""
|
||||
|
||||
#: src/core/MailProvider.js:69
|
||||
msgid "Have fun and don't hesitate to contact us if you encounter any problems :)"
|
||||
msgid "Have fun and don't hesitate to contact us if you encouter any problems :)"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/MailProvider.js:70
|
||||
|
|
|
@ -46,136 +46,136 @@ msgstr ""
|
|||
msgid "Hide Hidden Canvases"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:70
|
||||
#: src/ui/PixelTransferController.js:63
|
||||
msgid "Error :("
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:71
|
||||
#: src/ui/PixelTransferController.js:64
|
||||
msgid "Didn't get an answer from pixelplanet. Maybe try to refresh?"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:103
|
||||
#: src/ui/PixelTransferController.js:96
|
||||
msgid "Invalid Canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:104
|
||||
#: src/ui/PixelTransferController.js:97
|
||||
msgid "This canvas doesn't exist"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:107
|
||||
#: src/ui/PixelTransferController.js:111
|
||||
#: src/ui/PixelTransferController.js:115
|
||||
#: src/ui/PixelTransferController.js:100
|
||||
#: src/ui/PixelTransferController.js:104
|
||||
#: src/ui/PixelTransferController.js:108
|
||||
msgid "Invalid Coordinates"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:108
|
||||
#: src/ui/PixelTransferController.js:101
|
||||
msgid "x out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:112
|
||||
#: src/ui/PixelTransferController.js:105
|
||||
msgid "y out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:116
|
||||
#: src/ui/PixelTransferController.js:109
|
||||
msgid "z out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:119
|
||||
#: src/ui/PixelTransferController.js:112
|
||||
msgid "Wrong Color"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:120
|
||||
#: src/ui/PixelTransferController.js:113
|
||||
msgid "Invalid color selected"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:123
|
||||
#: src/ui/PixelTransferController.js:116
|
||||
msgid "Just for registered Users"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:124
|
||||
#: src/ui/PixelTransferController.js:117
|
||||
msgid "You have to be logged in to place on this canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:127
|
||||
#: src/ui/PixelTransferController.js:120
|
||||
msgid "Place more :)"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:129
|
||||
#: src/ui/PixelTransferController.js:122
|
||||
msgid "You can not access this canvas yet. You need to place more pixels"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:132
|
||||
#: src/ui/PixelTransferController.js:125
|
||||
msgid "Pixel protected!"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:139
|
||||
#: src/ui/PixelTransferController.js:132
|
||||
msgid "Please prove that you are human"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:143
|
||||
#: src/ui/PixelTransferController.js:136
|
||||
msgid "No Proxies Allowed :("
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:144
|
||||
#: src/ui/PixelTransferController.js:137
|
||||
msgid "You are using a Proxy."
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:147
|
||||
#: src/ui/PixelTransferController.js:140
|
||||
msgid "Not allowed"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:148
|
||||
#: src/ui/PixelTransferController.js:141
|
||||
msgid "Just the Top10 of yesterday can place here"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:151
|
||||
#: src/ui/PixelTransferController.js:144
|
||||
msgid "You are weird"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:153
|
||||
#: src/ui/PixelTransferController.js:146
|
||||
msgid "Server got confused by your pixels. Are you playing on multiple devices?"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:156
|
||||
#: src/ui/PixelTransferController.js:149
|
||||
msgid "Banned"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:160
|
||||
#: src/ui/PixelTransferController.js:153
|
||||
msgid "Range Banned"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:161
|
||||
#: src/ui/PixelTransferController.js:154
|
||||
msgid "Your Internet Provider is banned from playing this game"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:164
|
||||
#: src/ui/PixelTransferController.js:157
|
||||
msgid "Timeout"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:166
|
||||
#: src/ui/PixelTransferController.js:159
|
||||
msgid ""
|
||||
"Didn't get an answer from pixelplanet. Maybe try to refresh if problem "
|
||||
"persists?"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:169
|
||||
#: src/ui/PixelTransferController.js:162
|
||||
msgid "Weird"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:170
|
||||
#: src/ui/PixelTransferController.js:163
|
||||
msgid "Couldn't set Pixel"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/PixelTransferController.js:175
|
||||
#: src/ui/PixelTransferController.js:168
|
||||
#, javascript-format
|
||||
msgid "Error ${ retCode }"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/rendererFactory.js:30
|
||||
#: src/ui/renderer.js:35
|
||||
msgid "Canvas Error"
|
||||
msgstr ""
|
||||
|
||||
#: src/ui/rendererFactory.js:31
|
||||
#: src/ui/renderer.js:36
|
||||
msgid "Can't render 3D canvas, do you have WebGL2 disabled?"
|
||||
msgstr ""
|
||||
|
||||
|
@ -194,7 +194,6 @@ msgid "try again after ${ ti }min"
|
|||
msgstr ""
|
||||
|
||||
#: src/store/actions/fetch.js:70
|
||||
#, javascript-format
|
||||
msgid "Connection error ${ code } :("
|
||||
msgstr ""
|
||||
|
||||
|
@ -231,6 +230,12 @@ msgstr ""
|
|||
msgid "You have new messages in chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:561
|
||||
#: src/components/CoordinatesBox.jsx:31
|
||||
#: src/components/ModWatchtools.jsx:371
|
||||
msgid "Copy to Clipboard"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/OnlineBox.jsx:40
|
||||
msgid "Online Users on Canvas"
|
||||
msgstr ""
|
||||
|
@ -243,13 +248,6 @@ msgstr ""
|
|||
msgid "Pixels placed"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:565
|
||||
#: src/components/CoordinatesBox.jsx:31
|
||||
#: src/components/ModWatchtools.jsx:378
|
||||
#: src/components/ModWatchtools.jsx:396
|
||||
msgid "Copy to Clipboard"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/buttons/CanvasSwitchButton.jsx:20
|
||||
#: src/components/windows/index.js:19
|
||||
msgid "Canvas Selection"
|
||||
|
@ -281,7 +279,7 @@ msgstr ""
|
|||
|
||||
#: src/components/Admintools.jsx:103
|
||||
#: src/components/ModCanvastools.jsx:222
|
||||
#: src/components/ModWatchtools.jsx:120
|
||||
#: src/components/ModWatchtools.jsx:118
|
||||
#: src/components/Window.jsx:157
|
||||
#: src/components/Window.jsx:260
|
||||
#: src/components/contextmenus/ChannelContextMenu.jsx:59
|
||||
|
@ -332,10 +330,6 @@ msgstr ""
|
|||
msgid "Make Screenshot"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/buttons/GlobeButton.jsx:34
|
||||
msgid "Globe View"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/buttons/PalselButton.jsx:30
|
||||
msgid "Close Palette"
|
||||
msgstr ""
|
||||
|
@ -344,6 +338,10 @@ msgstr ""
|
|||
msgid "Open Palette"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/buttons/GlobeButton.jsx:34
|
||||
msgid "Globe View"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/windows/index.js:16
|
||||
msgid "Registration"
|
||||
msgstr ""
|
||||
|
@ -360,23 +358,23 @@ msgstr ""
|
|||
msgid "Canvas Archive"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:47
|
||||
#: src/components/GlobalCaptcha.jsx:50
|
||||
msgid "You took too long, try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:50
|
||||
#: src/components/GlobalCaptcha.jsx:53
|
||||
msgid "You failed your captcha"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:53
|
||||
#: src/components/GlobalCaptcha.jsx:56
|
||||
msgid "No or invalid captcha text"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:56
|
||||
#: src/components/GlobalCaptcha.jsx:59
|
||||
msgid "No captcha id given"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:59
|
||||
#: src/components/GlobalCaptcha.jsx:62
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr ""
|
||||
|
||||
|
@ -386,7 +384,7 @@ msgstr ""
|
|||
#: src/components/ChangeName.jsx:58
|
||||
#: src/components/ChangePassword.jsx:79
|
||||
#: src/components/DeleteAccount.jsx:55
|
||||
#: src/components/GlobalCaptcha.jsx:71
|
||||
#: src/components/GlobalCaptcha.jsx:74
|
||||
#: src/components/LogInForm.jsx:70
|
||||
#: src/components/windows/ForgotPassword.jsx:73
|
||||
#: src/components/windows/Register.jsx:89
|
||||
|
@ -397,18 +395,18 @@ msgstr ""
|
|||
#: src/components/ChangeName.jsx:70
|
||||
#: src/components/ChangePassword.jsx:115
|
||||
#: src/components/DeleteAccount.jsx:68
|
||||
#: src/components/GlobalCaptcha.jsx:80
|
||||
#: src/components/GlobalCaptcha.jsx:83
|
||||
#: src/components/windows/ForgotPassword.jsx:89
|
||||
#: src/components/windows/Register.jsx:133
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/GlobalCaptcha.jsx:86
|
||||
#: src/components/GlobalCaptcha.jsx:89
|
||||
msgid "Send"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/BanInfo.jsx:66
|
||||
msgid "You are banned. You think it is unjustified? Check out the "
|
||||
msgid "You are banned. You think it is unjustifed? Check out the "
|
||||
msgstr ""
|
||||
|
||||
#: src/components/BanInfo.jsx:76
|
||||
|
@ -518,7 +516,6 @@ msgid "Press ${ bindG } to toggle grid"
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:64
|
||||
#, javascript-format
|
||||
msgid "Press ${ bindX } to toggle showing of pixel activity"
|
||||
msgstr ""
|
||||
|
||||
|
@ -528,7 +525,6 @@ msgid "Press ${ bindH } to toggle historical view"
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:66
|
||||
#, javascript-format
|
||||
msgid "Press ${ bindR } to copy coordinates"
|
||||
msgstr ""
|
||||
|
||||
|
@ -550,7 +546,6 @@ msgid "Press ${ bindAUp }, ${ bindALeft }, ${ bindADown }, ${ bindARight } to mo
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:70
|
||||
#, javascript-format
|
||||
msgid "Drag ${ mouseSymbol } mouse or ${ touchSymbol } pan to move"
|
||||
msgstr ""
|
||||
|
||||
|
@ -560,7 +555,6 @@ msgid "Scroll ${ mouseSymbol } mouse wheel or ${ touchSymbol } pinch to zoom"
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:72
|
||||
#, javascript-format
|
||||
msgid "Hold left ${ bindShift } for placing while moving mouse"
|
||||
msgstr ""
|
||||
|
||||
|
@ -579,14 +573,12 @@ msgstr ""
|
|||
|
||||
#: src/components/windows/Help.jsx:75
|
||||
#: src/components/windows/Help.jsx:87
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Click ${ mouseSymbol } middle mouse button or ${ touchSymbol } long-tap to "
|
||||
"select current hovering color"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:81
|
||||
#, javascript-format
|
||||
msgid "Press ${ bindE } and ${ bindC } to fly up and down"
|
||||
msgstr ""
|
||||
|
||||
|
@ -603,7 +595,6 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:84
|
||||
#, javascript-format
|
||||
msgid "${ mouseSymbol } Right click and drag mouse to pan"
|
||||
msgstr ""
|
||||
|
||||
|
@ -626,7 +617,6 @@ msgid "Credit for the Palette of the Moon goes to ${ starhouseLink }."
|
|||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:97
|
||||
#, javascript-format
|
||||
msgid "Credit for the Palette of the Top10 canvas goes to ${ vinikLink }."
|
||||
msgstr ""
|
||||
|
||||
|
@ -694,7 +684,7 @@ msgstr ""
|
|||
msgid "For when you are playing on a potato."
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:380
|
||||
#: src/components/Converter.jsx:376
|
||||
#: src/components/windows/Settings.jsx:148
|
||||
msgid "Light Grid"
|
||||
msgstr ""
|
||||
|
@ -981,7 +971,7 @@ msgid "Register"
|
|||
msgstr ""
|
||||
|
||||
#: src/components/UserAreaContent.jsx:62
|
||||
msgid "Today Placed Pixels"
|
||||
msgid "Todays Placed Pixels"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/UserAreaContent.jsx:66
|
||||
|
@ -1030,77 +1020,77 @@ msgstr ""
|
|||
msgid "Choose Canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:217
|
||||
#: src/components/Converter.jsx:216
|
||||
msgid "Palette Download"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:219
|
||||
#: src/components/Converter.jsx:218
|
||||
#, javascript-format
|
||||
msgid "Palette for ${ gimpLink }"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:240
|
||||
#: src/components/Converter.jsx:236
|
||||
msgid "Image Converter"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:241
|
||||
#: src/components/Converter.jsx:237
|
||||
msgid "Convert an image to canvas colors"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:260
|
||||
#: src/components/Converter.jsx:256
|
||||
msgid "Choose Strategy"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:298
|
||||
#: src/components/Converter.jsx:294
|
||||
msgid "Serpentine"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:300
|
||||
#: src/components/Converter.jsx:296
|
||||
msgid "Minimum Color Distance"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:327
|
||||
#: src/components/Converter.jsx:323
|
||||
msgid "Calculate like GIMP"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:331
|
||||
#: src/components/Converter.jsx:327
|
||||
msgid "Choose Color Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:360
|
||||
#: src/components/Converter.jsx:356
|
||||
msgid "Add Grid (uncheck if you need a 1:1 template)"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:382
|
||||
#: src/components/Converter.jsx:398
|
||||
#: src/components/Converter.jsx:378
|
||||
#: src/components/Converter.jsx:394
|
||||
msgid "Offset"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:427
|
||||
#: src/components/Converter.jsx:423
|
||||
msgid "Scale Image"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:438
|
||||
#: src/components/Converter.jsx:434
|
||||
msgid "Width"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:469
|
||||
#: src/components/Converter.jsx:465
|
||||
msgid "Height"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:508
|
||||
#: src/components/Converter.jsx:504
|
||||
msgid "Keep Ratio"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:521
|
||||
#: src/components/Converter.jsx:517
|
||||
msgid "Anti Aliasing"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:535
|
||||
#: src/components/Converter.jsx:531
|
||||
msgid "Reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/Converter.jsx:553
|
||||
#: src/components/Converter.jsx:549
|
||||
msgid "Download Template"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1199,7 +1189,7 @@ msgstr ""
|
|||
msgid "Countries by Pixels Today"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/chartSettings.js:351
|
||||
#: src/core/chartSettings.js:352
|
||||
msgid "Total Pixels placed per day"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1349,14 +1339,14 @@ msgstr ""
|
|||
#: src/components/ModCanvastools.jsx:330
|
||||
#: src/components/ModCanvastools.jsx:403
|
||||
#: src/components/ModCanvastools.jsx:486
|
||||
#: src/components/ModWatchtools.jsx:176
|
||||
#: src/components/ModWatchtools.jsx:174
|
||||
msgid "Top-left corner"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModCanvastools.jsx:347
|
||||
#: src/components/ModCanvastools.jsx:420
|
||||
#: src/components/ModCanvastools.jsx:503
|
||||
#: src/components/ModWatchtools.jsx:193
|
||||
#: src/components/ModWatchtools.jsx:191
|
||||
msgid "Bottom-right corner"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1416,27 +1406,27 @@ msgstr ""
|
|||
msgid "Interval is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:124
|
||||
#: src/components/ModWatchtools.jsx:122
|
||||
msgid "Check who placed in an area"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:125
|
||||
#: src/components/ModWatchtools.jsx:123
|
||||
msgid "Canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:144
|
||||
#: src/components/ModWatchtools.jsx:142
|
||||
msgid "Interval"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:159
|
||||
#: src/components/ModWatchtools.jsx:157
|
||||
msgid "IID (optional)"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:239
|
||||
#: src/components/ModWatchtools.jsx:236
|
||||
msgid "Get Pixels"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/ModWatchtools.jsx:271
|
||||
#: src/components/ModWatchtools.jsx:267
|
||||
msgid "Get Users"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1460,6 +1450,10 @@ msgstr ""
|
|||
msgid "(0 = infinite)"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/contextmenus/ChannelContextMenu.jsx:46
|
||||
msgid "Mute"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/contextmenus/UserContextMenu.jsx:49
|
||||
msgid "Ping"
|
||||
msgstr ""
|
||||
|
@ -1472,10 +1466,6 @@ msgstr ""
|
|||
msgid "Block"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/contextmenus/ChannelContextMenu.jsx:46
|
||||
msgid "Mute"
|
||||
msgstr ""
|
||||
|
||||
#: src/components/windows/Help.jsx:15
|
||||
#: src/components/windows/Settings.jsx:87
|
||||
msgctxt "keybinds"
|
||||
|
|
1599
i18n/to.po
1352
i18n/tr.po
8624
package-lock.json
generated
69
package.json
|
@ -8,12 +8,8 @@
|
|||
"description": "Unlimited planet canvas for placing pixels",
|
||||
"main": "server.js",
|
||||
"scripts": {
|
||||
"build": "node scripts/build.js",
|
||||
"build:server": "webpack --config ./webpack.config.server.js",
|
||||
"build:client": "node scripts/build.js --client",
|
||||
"build:dev": "webpack --config ./webpack.config.server.js && webpack --env development --config ./webpack.config.client.js && npm run minify-css",
|
||||
"update-browserlist": "browserslist --update-db",
|
||||
"deploy": "ssh pixelplanet /home/pixelpla/rebuild.sh",
|
||||
"build": "node scripts/build.js && npm run minify-css",
|
||||
"build:dev": "webpack --env extract --config ./webpack.config.server.js && webpack --env extract --env development --config ./webpack.config.client.js && npm run minify-css",
|
||||
"minify-css": "node scripts/minifyCss.js",
|
||||
"babel-node": "babel-node",
|
||||
"lint": "cd $INIT_CWD && eslint --ext .jsx --ext .js",
|
||||
|
@ -26,11 +22,11 @@
|
|||
"not IE_Mob 11"
|
||||
],
|
||||
"dependencies": {
|
||||
"bcrypt": "^5.1.1",
|
||||
"bcrypt": "^5.0.1",
|
||||
"chart.js": "^3.9.1",
|
||||
"compression": "^1.7.3",
|
||||
"cookie": "^0.5.0",
|
||||
"core-js": "^3.34.0",
|
||||
"core-js": "^3.23.4",
|
||||
"etag": "^1.8.1",
|
||||
"express": "^4.17.2",
|
||||
"express-session": "^1.17.2",
|
||||
|
@ -39,7 +35,7 @@
|
|||
"morgan": "^1.10.0",
|
||||
"multer": "^1.4.5-lts.1",
|
||||
"mysql2": "^2.3.3",
|
||||
"nodemailer": "^6.9.7",
|
||||
"nodemailer": "^6.7.8",
|
||||
"passport": "^0.6.0",
|
||||
"passport-discord": "^0.1.4",
|
||||
"passport-facebook": "^3.0.0",
|
||||
|
@ -51,56 +47,57 @@
|
|||
"react": "^18.2.0",
|
||||
"react-chartjs-2": "^4.3.1",
|
||||
"react-dom": "^18.2.0",
|
||||
"react-icons": "^4.12.0",
|
||||
"react-icons": "^4.3.1",
|
||||
"react-redux": "^8.0.2",
|
||||
"react-stay-scrolled": "^8.0.0",
|
||||
"react-toggle": "^4.1.3",
|
||||
"redis": "^4.6.11",
|
||||
"redis": "^4.3.1",
|
||||
"redux": "^4.1.2",
|
||||
"redux-persist": "^6.0.0",
|
||||
"redux-thunk": "^2.4.1",
|
||||
"reselect": "^4.1.6",
|
||||
"sequelize": "^6.35.2",
|
||||
"sequelize": "^6.21.6",
|
||||
"sharp": "^0.31.0",
|
||||
"startaudiocontext": "^1.2.1",
|
||||
"three": "^0.143.0",
|
||||
"three-trackballcontrols": "^0.9.0",
|
||||
"ttag": "^1.8.3",
|
||||
"url-search-params-polyfill": "^8.2.5",
|
||||
"winston": "^3.11.0",
|
||||
"ttag": "^1.7.24",
|
||||
"url-search-params-polyfill": "^8.1.1",
|
||||
"winston": "^3.8.2",
|
||||
"winston-daily-rotate-file": "^4.5.5",
|
||||
"ws": "^8.15.1"
|
||||
"ws": "^8.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "^7.23.4",
|
||||
"@babel/core": "^7.23.6",
|
||||
"@babel/eslint-parser": "^7.23.3",
|
||||
"@babel/node": "^7.22.19",
|
||||
"@babel/plugin-transform-react-constant-elements": "^7.23.3",
|
||||
"@babel/plugin-transform-react-inline-elements": "^7.23.3",
|
||||
"@babel/preset-env": "^7.23.6",
|
||||
"@babel/preset-react": "^7.23.3",
|
||||
"babel-loader": "^9.1.3",
|
||||
"@babel/cli": "^7.18.6",
|
||||
"@babel/core": "^7.18.6",
|
||||
"@babel/eslint-parser": "^7.16.5",
|
||||
"@babel/node": "^7.18.6",
|
||||
"@babel/plugin-transform-react-constant-elements": "^7.18.6",
|
||||
"@babel/plugin-transform-react-inline-elements": "^7.18.6",
|
||||
"@babel/preset-env": "^7.18.6",
|
||||
"@babel/preset-react": "^7.18.6",
|
||||
"assets-webpack-plugin": "^7.1.1",
|
||||
"babel-loader": "^8.2.3",
|
||||
"babel-plugin-transform-react-pure-class-to-function": "^1.0.1",
|
||||
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
|
||||
"babel-plugin-ttag": "^1.8.5",
|
||||
"babel-plugin-ttag": "^1.7.30",
|
||||
"clean-css": "^5.2.2",
|
||||
"clean-css-loader": "^4.2.1",
|
||||
"clean-css-loader": "^4.1.1",
|
||||
"copy-webpack-plugin": "^11.0.0",
|
||||
"css-loader": "^6.8.1",
|
||||
"eslint": "^8.55.0",
|
||||
"css-loader": "^6.5.1",
|
||||
"eslint": "^8.22.0",
|
||||
"eslint-config-airbnb": "^19.0.4",
|
||||
"eslint-config-airbnb-base": "^15.0.0",
|
||||
"eslint-plugin-import": "^2.29.0",
|
||||
"eslint-plugin-jsx-a11y": "^6.8.0",
|
||||
"eslint-plugin-react": "^7.33.2",
|
||||
"eslint-plugin-import": "^2.25.3",
|
||||
"eslint-plugin-jsx-a11y": "^6.6.0",
|
||||
"eslint-plugin-react": "^7.30.1",
|
||||
"eslint-plugin-react-hooks": "^4.6.0",
|
||||
"generate-package-json-webpack-plugin": "^2.6.0",
|
||||
"ttag-cli": "^1.10.9",
|
||||
"ttag-cli": "^1.9.3",
|
||||
"ttag-po-loader": "0.0.2",
|
||||
"webpack": "^5.89.0",
|
||||
"webpack-bundle-analyzer": "^4.10.1",
|
||||
"webpack-cli": "^5.1.4",
|
||||
"webpack": "^5.67.0",
|
||||
"webpack-bundle-analyzer": "^4.5.0",
|
||||
"webpack-cli": "^4.9.2",
|
||||
"webpack-node-externals": "^3.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
|
|
BIN
public/cf/ua.gif
Before Width: | Height: | Size: 228 B After Width: | Height: | Size: 562 B |
82
public/hcaptcha.svg
Normal file
|
@ -0,0 +1,82 @@
|
|||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 450 450" style="enable-background:new 0 0 450 450;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st24{opacity:0.5;fill:#0074BF;enable-background:new ;}
|
||||
.st25{opacity:0.7;fill:#0074BF;enable-background:new ;}
|
||||
.st26{opacity:0.7;fill:#0082BF;enable-background:new ;}
|
||||
.st27{opacity:0.8;fill:#0082BF;enable-background:new ;}
|
||||
.st28{fill:#0082BF;}
|
||||
.st29{opacity:0.5;fill:#008FBF;enable-background:new ;}
|
||||
.st30{opacity:0.8;fill:#008FBF;enable-background:new ;}
|
||||
.st31{fill:#008FBF;}
|
||||
.st32{opacity:0.7;fill:#009DBF;enable-background:new ;}
|
||||
.st33{fill:#009DBF;}
|
||||
.st34{opacity:0.7;fill:#00ABBF;enable-background:new ;}
|
||||
.st35{fill:#00ABBF;}
|
||||
.st36{opacity:0.5;fill:#00B9BF;enable-background:new ;}
|
||||
.st37{opacity:0.8;fill:#00B9BF;enable-background:new ;}
|
||||
.st38{fill:#00B9BF;}
|
||||
.st39{opacity:0.7;fill:#00C6BF;enable-background:new ;}
|
||||
.st40{opacity:0.8;fill:#00C6BF;enable-background:new ;}
|
||||
.st41{fill:#00C6BF;}
|
||||
.st42{opacity:0.5;fill:#00D4BF;enable-background:new ;}
|
||||
.st43{opacity:0.7;fill:#00D4BF;enable-background:new ;}
|
||||
.st44{opacity:0.7;fill:#34E2C9;enable-background:new ;}
|
||||
.st45{opacity:0.7;fill:#1EA4D3;enable-background:new ;}
|
||||
.st46{opacity:0.7;fill:#9F75F2;enable-background:new ;}
|
||||
.st47{opacity:0.7;fill:#FFCA55;enable-background:new ;}
|
||||
.st48{opacity:0.7;fill:#F91919;enable-background:new ;}
|
||||
</style>
|
||||
<rect x="276.9" y="385.6" class="st24" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="385.6" class="st25" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="385.6" class="st25" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="385.6" class="st24" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="333.8" class="st26" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="333.8" class="st27" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="333.8" class="st28" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="333.8" class="st28" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="333.8" class="st27" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="333.8" class="st26" width="51.9" height="51.9"/>
|
||||
<rect x="380.6" y="281.9" class="st29" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="281.9" class="st30" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="281.9" class="st31" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="281.9" class="st31" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="281.9" class="st31" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="281.9" class="st31" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="281.9" class="st30" width="51.9" height="51.9"/>
|
||||
<rect x="17.5" y="281.9" class="st29" width="51.9" height="51.9"/>
|
||||
<rect x="380.6" y="230" class="st32" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="230" class="st33" width="51.9" height="51.9"/>
|
||||
<rect x="17.5" y="230" class="st32" width="51.9" height="51.9"/>
|
||||
<rect x="380.6" y="178.1" class="st34" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="178.1" class="st35" width="51.9" height="51.9"/>
|
||||
<rect x="17.5" y="178.1" class="st34" width="51.9" height="51.9"/>
|
||||
<rect x="380.6" y="126.3" class="st36" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="126.3" class="st37" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="126.3" class="st38" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="126.3" class="st38" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="126.3" class="st38" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="126.3" class="st38" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="126.3" class="st37" width="51.9" height="51.9"/>
|
||||
<rect x="17.5" y="126.3" class="st36" width="51.9" height="51.9"/>
|
||||
<rect x="328.8" y="74.4" class="st39" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="74.4" class="st40" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="74.4" class="st41" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="74.4" class="st41" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="74.4" class="st40" width="51.9" height="51.9"/>
|
||||
<rect x="69.4" y="74.4" class="st39" width="51.9" height="51.9"/>
|
||||
<rect x="276.9" y="22.5" class="st42" width="51.9" height="51.9"/>
|
||||
<rect x="225" y="22.5" class="st43" width="51.9" height="51.9"/>
|
||||
<rect x="173.1" y="22.5" class="st43" width="51.9" height="51.9"/>
|
||||
<rect x="121.3" y="22.5" class="st42" width="51.9" height="51.9"/>
|
||||
<path fill="#ffffff" d="M154.1,213.6l14.5-32.4c5.3-8.3,4.6-18.5-1.2-24.2c-0.8-0.8-1.6-1.4-2.5-2c-4-2.5-8.9-3-13.3-1.6 c-5,1.6-9.3,4.9-12,9.3c0,0-19.8,46.2-27.2,66.9s-4.4,58.8,24,87.3c30.1,30.1,73.7,37,101.5,16.1c1.2-0.6,2.3-1.3,3.3-2.1 l85.7-71.6c4.2-3.4,10.3-10.5,4.8-18.6c-5.4-7.9-15.6-2.5-19.8,0.1l-49.3,35.9c-0.9,0.8-2.3,0.6-3.1-0.3c0,0,0,0-0.1-0.1 c-1.3-1.5-1.5-5.6,0.5-7.2l75.6-64.2c6.5-5.9,7.4-14.4,2.2-20.3c-5.2-5.7-13.4-5.6-20,0.4l-68.1,53.2c-1.3,1.1-3.2,0.9-4.2-0.4 c0,0-0.1-0.1-0.1-0.1c-1.3-1.5-1.9-4.1-0.3-5.6l77.1-74.8c6.1-5.7,6.4-15.2,0.8-21.3c-2.7-2.9-6.5-4.5-10.5-4.5 c-4,0-7.9,1.5-10.8,4.3l-78.8,74c-1.9,1.9-5.6,0-6-2.2c-0.2-0.8,0.1-1.6,0.7-2.2l60.3-68.7c6-5.6,6.3-15,0.7-21 c-5.6-6-15-6.3-21-0.7c-0.2,0.2-0.5,0.5-0.7,0.7l-91.4,101.1c-3.3,3.3-8.1,3.4-10.4,1.5C153.2,217.3,152.9,215.1,154.1,213.6z"/>
|
||||
</svg>
|
After Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 105 KiB |
|
@ -1,20 +0,0 @@
|
|||
/*
|
||||
* webpack loader that
|
||||
* marks modules that include ttag as non-cachable
|
||||
*/
|
||||
const filtered = {};
|
||||
|
||||
module.exports = function (source) {
|
||||
if (filtered.hasOwnProperty(this.resourcePath)) {
|
||||
if (filtered[this.resourcePath]) {
|
||||
this.cacheable(false);
|
||||
}
|
||||
return source;
|
||||
}
|
||||
const hasTtag = source.slice(0, 400).includes('ttag');
|
||||
filtered[this.resourcePath] = hasTtag;
|
||||
if (hasTtag) {
|
||||
this.cacheable(false);
|
||||
}
|
||||
return source;
|
||||
}
|
181
scripts/build.js
|
@ -3,52 +3,14 @@
|
|||
* Lets split that here
|
||||
*/
|
||||
|
||||
const path = require('path');
|
||||
const fs = require('fs');
|
||||
const { spawn } = require('child_process');
|
||||
const webpack = require('webpack');
|
||||
|
||||
const minifyCss = require('./minifyCss');
|
||||
const serverConfig = require('../webpack.config.server.js');
|
||||
const clientConfig = require('../webpack.config.client.js');
|
||||
const { getAllAvailableLocals } = clientConfig;
|
||||
|
||||
let langs = 'all';
|
||||
let doBuildServer = false;
|
||||
let doBuildClient = false;
|
||||
let parallel = false;
|
||||
let recursion = false;
|
||||
for (let i = 0; i < process.argv.length; i += 1) {
|
||||
switch (process.argv[i]) {
|
||||
case '--langs': {
|
||||
const newLangs = process.argv[++i];
|
||||
if (newLangs) langs = newLangs;
|
||||
break;
|
||||
}
|
||||
case '--client':
|
||||
doBuildClient = true;
|
||||
break;
|
||||
case `--server`:
|
||||
doBuildServer = true;
|
||||
break;
|
||||
case '--parallel':
|
||||
parallel = true;
|
||||
break;
|
||||
case '--recursion':
|
||||
recursion = true;
|
||||
break;
|
||||
default:
|
||||
// nothing
|
||||
}
|
||||
}
|
||||
if (!doBuildServer && !doBuildClient) {
|
||||
doBuildServer = true;
|
||||
doBuildClient = true;
|
||||
}
|
||||
|
||||
function compile(webpackConfig) {
|
||||
return new Promise((resolve, reject) => {
|
||||
webpack(webpackConfig, (err, stats) => {
|
||||
webpack(webpackConfig).run((err, stats) => {
|
||||
if (err) {
|
||||
return reject(err);
|
||||
}
|
||||
|
@ -59,146 +21,31 @@ function compile(webpackConfig) {
|
|||
});
|
||||
}
|
||||
|
||||
function buildServer() {
|
||||
async function buildProduction() {
|
||||
// server files
|
||||
console.log('-----------------------------');
|
||||
console.log(`Build server...`);
|
||||
console.log('-----------------------------');
|
||||
const ts = Date.now();
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
const argsc = (langs === 'all')
|
||||
? ['webpack', '--env', 'extract', '--config', './webpack.config.server.js']
|
||||
: ['webpack', '--config', './webpack.config.server.js']
|
||||
const serverCompile = spawn('npx', argsc);
|
||||
serverCompile.stdout.on('data', (data) => {
|
||||
console.log(data.toString());
|
||||
});
|
||||
serverCompile.stderr.on('data', (data) => {
|
||||
console.error(data.toString());
|
||||
});
|
||||
serverCompile.on('close', (code) => {
|
||||
if (code) {
|
||||
reject(new Error('Server compilation failed!'));
|
||||
} else {
|
||||
console.log('---------------------------------------');
|
||||
console.log(`Server Compilation finished in ${Math.floor((Date.now() - ts) / 1000)}s`);
|
||||
console.log('---------------------------------------');
|
||||
resolve();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function buildClients(slangs) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const clientCompile = spawn('npm', ['run', 'build', '--', '--client', '--recursion', '--langs', slangs.join(',')]);
|
||||
clientCompile.stdout.on('data', (data) => {
|
||||
console.log(data.toString());
|
||||
});
|
||||
clientCompile.stderr.on('data', (data) => {
|
||||
console.error(data.toString());
|
||||
});
|
||||
clientCompile.on('close', (code) => {
|
||||
if (code) {
|
||||
reject(new Error('Client compilation failed!'));
|
||||
} else {
|
||||
resolve();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
async function buildClientsSync(avlangs) {
|
||||
for(let i = 0; i < avlangs.length; i += 1) {
|
||||
const lang = avlangs[i];
|
||||
await compile(serverConfig({
|
||||
development: false,
|
||||
extract: false,
|
||||
}));
|
||||
// client files
|
||||
const langs = getAllAvailableLocals();
|
||||
console.log('Available locales:', langs);
|
||||
const st = Date.now();
|
||||
for(let i = 0; i < langs.length; i += 1) {
|
||||
const lang = langs[i];
|
||||
console.log(`Build client for locale ${lang}...`);
|
||||
console.log('-----------------------------');
|
||||
await compile(clientConfig({
|
||||
development: false,
|
||||
analyze: false,
|
||||
extract: false,
|
||||
locale: lang,
|
||||
clean: false,
|
||||
readonly: recursion,
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
function buildClientsParallel(avlangs) {
|
||||
const st = Date.now();
|
||||
const numProc = 3;
|
||||
let nump = Math.floor(avlangs.length / numProc);
|
||||
if (!nump) nump = 1;
|
||||
|
||||
const promises = [];
|
||||
while (avlangs.length >= nump) {
|
||||
const slangs = avlangs.splice(0, nump);
|
||||
promises.push(buildClients(slangs));
|
||||
}
|
||||
if (avlangs.length) {
|
||||
promises.push(buildClientsSync(avlangs));
|
||||
}
|
||||
return Promise.all(promises);
|
||||
}
|
||||
|
||||
async function buildProduction() {
|
||||
const st = Date.now();
|
||||
// cleanup old files
|
||||
if (!recursion) {
|
||||
fs.rmSync(path.resolve(__dirname, '..', 'node_modules', '.cache', 'webpack'), { recursive: true, force: true });
|
||||
}
|
||||
|
||||
// decide which languages to build
|
||||
let avlangs = getAllAvailableLocals();
|
||||
if (langs !== 'all') {
|
||||
avlangs = langs.split(',').map((l) => l.trim())
|
||||
.filter((l) => avlangs.includes(l));
|
||||
if (!avlangs.length) {
|
||||
console.error(`ERROR: language ${langs} not available`);
|
||||
process.exit(1);
|
||||
return;
|
||||
}
|
||||
}
|
||||
console.log('Building locales:', avlangs);
|
||||
|
||||
const promises = [];
|
||||
|
||||
if (doBuildServer) {
|
||||
promises.push(buildServer());
|
||||
}
|
||||
|
||||
if (doBuildClient) {
|
||||
if (!recursion) {
|
||||
console.log(
|
||||
'Building one package seperately to populate cache and possibly extract langs...',
|
||||
);
|
||||
await compile(clientConfig({
|
||||
development: false,
|
||||
analyze: false,
|
||||
extract: (langs === 'all'),
|
||||
locale: avlangs.shift(),
|
||||
clean: true,
|
||||
readonly: false,
|
||||
}));
|
||||
|
||||
console.log('-----------------------------');
|
||||
console.log(`Minify CSS assets...`);
|
||||
console.log('-----------------------------');
|
||||
await minifyCss();
|
||||
}
|
||||
|
||||
if (parallel) {
|
||||
promises.push(buildClientsParallel(avlangs));
|
||||
} else {
|
||||
promises.push(buildClientsSync(avlangs));
|
||||
}
|
||||
}
|
||||
await Promise.all(promises);
|
||||
|
||||
if (!recursion) {
|
||||
console.log(`Finished building in ${(Date.now() - st) / 1000}s`);
|
||||
} else {
|
||||
console.log(`Worker done in ${(Date.now() - st) / 1000}s`);
|
||||
}
|
||||
}
|
||||
|
||||
buildProduction();
|
||||
|
|
|
@ -14,7 +14,6 @@ const path = require('path');
|
|||
const CleanCSS = require('clean-css');
|
||||
const crypto = require('crypto');
|
||||
|
||||
const buildTs = Date.now();
|
||||
const assetdir = path.resolve(__dirname, '..', 'dist', 'public', 'assets');
|
||||
const builddir = path.resolve(__dirname, '..', 'dist');
|
||||
|
||||
|
@ -24,6 +23,7 @@ FILES.push('default.css');
|
|||
|
||||
async function minifyCss() {
|
||||
console.log('Minifying css');
|
||||
const assets = {};
|
||||
FILES.forEach((file) => {
|
||||
const input = fs.readFileSync(path.resolve(FOLDER, file), 'utf8');
|
||||
const options = {};
|
||||
|
@ -48,7 +48,10 @@ async function minifyCss() {
|
|||
}
|
||||
const filename = `${key}.${hash.substr(0, 8)}.css`;
|
||||
fs.writeFileSync(path.resolve(assetdir, filename), output.styles, 'utf8');
|
||||
assets[key] = `/assets/${filename}`;
|
||||
});
|
||||
const json = JSON.stringify(assets);
|
||||
fs.writeFileSync(path.resolve(builddir, 'styleassets.json'), json);
|
||||
}
|
||||
|
||||
async function doMinifyCss() {
|
||||
|
|
|
@ -18,9 +18,9 @@ import { createClient } from 'redis';
|
|||
|
||||
|
||||
import {
|
||||
createPngBackup,
|
||||
incrementalBackupRedis,
|
||||
updateBackupRedis,
|
||||
createPngBackup,
|
||||
incrementialBackupRedis,
|
||||
} from './core/tilesBackup';
|
||||
import canvases from './core/canvases';
|
||||
|
||||
|
@ -122,7 +122,8 @@ function getDateFolder() {
|
|||
if (month < 10) month = `0${month}`;
|
||||
if (day < 10) day = `0${day}`;
|
||||
const dayDir = `${date.getUTCFullYear()}/${month}/${day}`;
|
||||
return `${dir}/${dayDir}`;
|
||||
const backupDir = `${dir}/${dayDir}`;
|
||||
return backupDir;
|
||||
}
|
||||
|
||||
async function dailyBackup() {
|
||||
|
@ -138,25 +139,25 @@ async function dailyBackup() {
|
|||
await createPngBackup(backupRedis, canvases, backupDir);
|
||||
} catch (e) {
|
||||
fs.rmSync(backupDir, { recursive: true });
|
||||
console.log('Error occurred during daily backup', e);
|
||||
console.log('Error occured during daily backup', e);
|
||||
}
|
||||
console.log('Daily full backup done');
|
||||
}
|
||||
|
||||
async function incrementalBackup() {
|
||||
async function incrementialBackup() {
|
||||
const backupDir = getDateFolder();
|
||||
if (!fs.existsSync(backupDir)) {
|
||||
fs.mkdirSync(backupDir, { recursive: true });
|
||||
}
|
||||
try {
|
||||
await incrementalBackupRedis(
|
||||
await incrementialBackupRedis(
|
||||
canvasRedis,
|
||||
backupRedis,
|
||||
canvases,
|
||||
backupDir,
|
||||
);
|
||||
} catch (e) {
|
||||
console.log('Error occurred during incremental backup', e);
|
||||
console.log('Error occured during incremential backup', e);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -165,7 +166,7 @@ async function trigger() {
|
|||
if (!fs.existsSync(backupDir)) {
|
||||
await dailyBackup();
|
||||
} else {
|
||||
await incrementalBackup();
|
||||
await incrementialBackup();
|
||||
}
|
||||
if (CMD) {
|
||||
runCmd(CMD);
|
||||
|
|
|
@ -297,76 +297,16 @@
|
|||
[ 67, 52, 85 ],
|
||||
[ 0, 0, 0 ]
|
||||
],
|
||||
"size": 4096,
|
||||
"size": 2048,
|
||||
"historicalSizes": [
|
||||
[
|
||||
"20220627",
|
||||
1024
|
||||
],
|
||||
[
|
||||
"20231006",
|
||||
2048
|
||||
]
|
||||
],
|
||||
"bcd": 15000,
|
||||
"cds": 900000,
|
||||
"req": "top",
|
||||
"sd": "2022-01-06"
|
||||
},
|
||||
"9": {
|
||||
"ident": "e",
|
||||
"colors": [
|
||||
[ 255, 255, 255 ],
|
||||
[ 163, 198, 238 ],
|
||||
[ 255, 255, 255 ],
|
||||
[ 221, 221, 221 ],
|
||||
[ 172, 172, 172 ],
|
||||
[ 109, 109, 109 ],
|
||||
[ 58, 58, 58 ],
|
||||
[ 0, 0, 0 ],
|
||||
[ 255, 125, 120 ],
|
||||
[ 255, 40, 40 ],
|
||||
[ 191, 6, 6 ],
|
||||
[ 127, 0, 0 ],
|
||||
[ 163, 198, 238 ],
|
||||
[ 0, 255, 240 ],
|
||||
[ 18, 190, 255 ],
|
||||
[ 0, 127, 240 ],
|
||||
[ 16, 68, 194 ],
|
||||
[ 17, 17, 84 ],
|
||||
[ 167, 237, 0 ],
|
||||
[ 69, 171, 5 ],
|
||||
[ 79, 105, 32 ],
|
||||
[ 0, 79, 13 ],
|
||||
[ 109, 247, 177 ],
|
||||
[ 0, 193, 154 ],
|
||||
[ 0, 118, 127 ],
|
||||
[ 172, 104, 39 ],
|
||||
[ 114, 69, 36 ],
|
||||
[ 84, 50, 24 ],
|
||||
[ 255, 245, 92 ],
|
||||
[ 255, 218, 8 ],
|
||||
[ 227, 170, 0 ],
|
||||
[ 255, 182, 113 ],
|
||||
[ 255, 154, 8 ],
|
||||
[ 222, 108, 0 ],
|
||||
[ 230, 116, 255 ],
|
||||
[ 191, 56, 222 ],
|
||||
[ 136, 21, 178 ],
|
||||
[ 73, 13, 119 ],
|
||||
[ 255, 116, 225 ],
|
||||
[ 255, 34, 169 ],
|
||||
[ 172, 0, 109 ],
|
||||
[ 252, 225, 184 ],
|
||||
[ 213, 162, 115 ],
|
||||
[ 152, 107, 70 ]
|
||||
],
|
||||
"cli": 2,
|
||||
"size": 16384,
|
||||
"bcd": 5000,
|
||||
"cds": 600000,
|
||||
"ranked": false,
|
||||
"req": 500000,
|
||||
"sd": "2023-10-07"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
*
|
||||
*/
|
||||
|
||||
import assetWatcher from './core/fsWatcher';
|
||||
import canvases from './core/canvases';
|
||||
import ttag from './core/ttag';
|
||||
|
||||
|
@ -25,7 +24,6 @@ function getCanvases(t) {
|
|||
6: t`PixelCanvas`,
|
||||
7: t`1bit`,
|
||||
8: t`Top10`,
|
||||
9: t`Thoia`,
|
||||
};
|
||||
const canvasDesc = {
|
||||
0: t`Our main canvas, a huge map of the world. Place everywhere you like`,
|
||||
|
@ -36,44 +34,38 @@ function getCanvases(t) {
|
|||
6: t`Mirror of PixelCanvas`,
|
||||
7: t`Black and White canvas`,
|
||||
8: t`A canvas for the most active players from the the previous day. Daily ranking updates at 00:00 UTC.`,
|
||||
9: t`Thoia World Canvas. Advanced fictional worldbuilding and arts. Abandon the old world and all it entails.`,
|
||||
};
|
||||
/*
|
||||
* no edit below here needed when adding/removing canvas
|
||||
*/
|
||||
|
||||
const localizedCanvases = {};
|
||||
const localicedCanvases = {};
|
||||
const canvasKeys = Object.keys(canvases);
|
||||
|
||||
for (let i = 0; i < canvasKeys.length; i += 1) {
|
||||
const key = canvasKeys[i];
|
||||
localizedCanvases[key] = { ...canvases[key] };
|
||||
localizedCanvases[key].desc = canvasDesc[key]
|
||||
localicedCanvases[key] = { ...canvases[key] };
|
||||
localicedCanvases[key].desc = canvasDesc[key]
|
||||
|| canvases[key].desc
|
||||
|| `Canvas ${key}`;
|
||||
localizedCanvases[key].title = canvasTitles[key]
|
||||
localicedCanvases[key].title = canvasTitles[key]
|
||||
|| canvases[key].title
|
||||
|| `Canvas ${key}`;
|
||||
}
|
||||
|
||||
return localizedCanvases;
|
||||
return localicedCanvases;
|
||||
}
|
||||
|
||||
function translateCanvases() {
|
||||
const parsedCanvases = {};
|
||||
const lCanvases = {};
|
||||
(() => {
|
||||
const langs = Object.keys(ttag);
|
||||
langs.forEach((lang) => {
|
||||
parsedCanvases[lang] = getCanvases(ttag[lang].t);
|
||||
lCanvases[lang] = getCanvases(ttag[lang].t);
|
||||
});
|
||||
return parsedCanvases;
|
||||
})();
|
||||
|
||||
export function getLocalicedCanvases(lang) {
|
||||
return lCanvases[lang] || lCanvases.default;
|
||||
}
|
||||
|
||||
let lCanvases = translateCanvases();
|
||||
// reload on asset change
|
||||
assetWatcher.onChange(() => {
|
||||
lCanvases = translateCanvases();
|
||||
});
|
||||
|
||||
export default function getLocalizedCanvases(lang = 'en') {
|
||||
return lCanvases[lang] || lCanvases.en;
|
||||
}
|
||||
export default lCanvases;
|
||||
|
|
|
@ -17,9 +17,9 @@ import {
|
|||
import pixelTransferController from './ui/PixelTransferController';
|
||||
import store from './store/store';
|
||||
import renderApp from './components/App';
|
||||
import { initRenderer, getRenderer } from './ui/rendererFactory';
|
||||
import { initRenderer, getRenderer } from './ui/renderer';
|
||||
import { requestBanMe } from './store/actions/fetch';
|
||||
import socketClient from './socket/SocketClient';
|
||||
import { GC_INTERVAL } from './core/constants';
|
||||
|
||||
persistStore(store, {}, () => {
|
||||
window.addEventListener('message', store.dispatch);
|
||||
|
@ -51,7 +51,7 @@ persistStore(store, {}, () => {
|
|||
|
||||
store.dispatch(fetchMe());
|
||||
|
||||
socketClient.initialize(store, pixelTransferController, getRenderer);
|
||||
socketClient.initialize(store);
|
||||
});
|
||||
|
||||
(function load() {
|
||||
|
@ -65,8 +65,36 @@ persistStore(store, {}, () => {
|
|||
// garbage collection
|
||||
setInterval(() => {
|
||||
const renderer = getRenderer();
|
||||
renderer.gc();
|
||||
}, GC_INTERVAL);
|
||||
const chunks = renderer.getAllChunks();
|
||||
if (chunks) {
|
||||
const curTime = Date.now();
|
||||
let cnt = 0;
|
||||
chunks.forEach((value, key) => {
|
||||
if (curTime > value.timestamp + 300000) {
|
||||
const [zc, xc, yc] = value.cell;
|
||||
if (!renderer.isChunkInView(zc, xc, yc)) {
|
||||
cnt++;
|
||||
if (value.isBasechunk) {
|
||||
socketClient.deRegisterChunk([xc, yc]);
|
||||
}
|
||||
chunks.delete(key);
|
||||
value.destructor();
|
||||
}
|
||||
}
|
||||
});
|
||||
// eslint-disable-next-line no-console
|
||||
console.log('Garbage collection cleaned', cnt, 'chunks');
|
||||
}
|
||||
}, 300000);
|
||||
|
||||
// detect bot script
|
||||
setTimeout(() => {
|
||||
document.querySelectorAll('body > div > span').forEach((e) => {
|
||||
if (e.innerText.includes('Void')) {
|
||||
requestBanMe(1);
|
||||
}
|
||||
});
|
||||
}, 40000);
|
||||
|
||||
document.removeEventListener('DOMContentLoaded', onLoad);
|
||||
};
|
||||
|
|
|
@ -63,7 +63,7 @@ const BanInfo = ({ close }) => {
|
|||
return (
|
||||
<div style={{ userSelect: 'text' }}>
|
||||
<p>
|
||||
{t`You are banned. You think it is unjustified? Check out the `}
|
||||
{t`You are banned. You think it is unjustifed? Check out the `}
|
||||
<span
|
||||
role="button"
|
||||
tabIndex={0}
|
||||
|
|
|
@ -202,7 +202,6 @@ function Converter() {
|
|||
? null
|
||||
: (
|
||||
<option
|
||||
key={canvas}
|
||||
value={canvas}
|
||||
>
|
||||
{
|
||||
|
@ -223,10 +222,7 @@ function Converter() {
|
|||
onClick={() => {
|
||||
const canvas = canvases[selectedCanvas];
|
||||
const {
|
||||
title,
|
||||
desc,
|
||||
colors,
|
||||
cli = 0,
|
||||
title, desc, colors, cli,
|
||||
} = canvas;
|
||||
fileDownload(
|
||||
printGIMPPalette(title, desc, colors.slice(cli)),
|
||||
|
|
56
src/components/Creeper.svg
Normal file
|
@ -0,0 +1,56 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Layer_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="864px"
|
||||
height="864px"
|
||||
viewBox="0 0 864 864"
|
||||
enable-background="new 0 0 864 864"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="Creeper.svg"
|
||||
inkscape:version="0.92.4 (unknown)"><metadata
|
||||
id="metadata13"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs11" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="2416"
|
||||
inkscape:window-height="1621"
|
||||
id="namedview9"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.77257965"
|
||||
inkscape:cx="13.722139"
|
||||
inkscape:cy="191.30415"
|
||||
inkscape:window-x="423"
|
||||
inkscape:window-y="239"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="g6" />
|
||||
<g
|
||||
id="g6">
|
||||
|
||||
<path
|
||||
d="m 169.92806,224.8757 c 12.96191,0 174.83965,2.84395 174.83965,2.84395 1.031,45.06702 -0.18501,97.37311 -0.18501,144.3008 H 169.92691 c 8.5e-4,-48.64059 8.5e-4,-96.25484 8.5e-4,-147.14475 z m 443.64407,451.61505 c 0,0 -81.1844,-0.18967 -85.99494,-0.0279 -0.0349,0.0116 -0.0698,0.0302 -0.10705,0.0279 -0.19899,-0.0105 -0.14779,-0.021 0.10705,-0.0279 3.75627,-1.25326 -0.69004,-78.95949 -0.69004,-78.95949 -30.07804,0 -157.04976,0.33745 -181.70519,-0.35492 v 77.17678 c 0,0 -60.2026,0.13615 -86.31027,0.13615 V 450.98926 h 88.10464 V 377.78518 H 523.3194 v 69.88884 h 90.25273 z m 90.54596,-304.1119 H 527.47014 V 224.80121 h 176.64795 z"
|
||||
id="path4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill:currentColor;fill-rule:evenodd;stroke-width:1.16365039"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
|
@ -66,14 +66,14 @@ function LanguageSelect() {
|
|||
/* set with selected language */
|
||||
const d = new Date();
|
||||
d.setTime(d.getTime() + 24 * MONTH);
|
||||
let { hostname } = window.location;
|
||||
if (hostname.lastIndexOf('.') !== hostname.indexOf('.')) {
|
||||
hostname = hostname.slice(hostname.indexOf('.'));
|
||||
let { host } = window.location;
|
||||
if (host.lastIndexOf('.') !== host.indexOf('.')) {
|
||||
host = host.slice(host.indexOf('.'));
|
||||
} else {
|
||||
hostname = `.${hostname}`;
|
||||
host = `.${host}`;
|
||||
}
|
||||
// eslint-disable-next-line max-len
|
||||
document.cookie = `plang=${langSel};expires=${d.toUTCString()};path=/;domain=${hostname}`;
|
||||
document.cookie = `plang=${langSel};expires=${d.toUTCString()};path=/;domain=${host}`;
|
||||
window.location.reload();
|
||||
}}
|
||||
>
|
||||
|
|
|
@ -25,7 +25,7 @@ const MdLink = ({ href, title, refEmbed }) => {
|
|||
|
||||
const desc = getLinkDesc(href);
|
||||
|
||||
// treat pixelplanet links separately
|
||||
// treat pixelplanet links seperately
|
||||
if (desc === window.location.hostname && href.includes('/#')) {
|
||||
const coords = href.substring(href.indexOf('/#') + 1);
|
||||
if (isPopUp() && window.opener && !window.opener.closed) {
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
import React from 'react';
|
||||
|
||||
import { getRenderer } from '../ui/rendererFactory';
|
||||
import { getRenderer } from '../ui/renderer';
|
||||
|
||||
const btnStyle = {
|
||||
fontSize: 34,
|
||||
|
|
|
@ -96,9 +96,7 @@ function ModWatchtools() {
|
|||
selectCanvas(canvasId);
|
||||
}, [canvasId]);
|
||||
|
||||
const {
|
||||
columns, types, rows, ts,
|
||||
} = table;
|
||||
const { columns, types, rows } = table;
|
||||
const cidColumn = (types) ? (types.indexOf('cid')) : -1;
|
||||
|
||||
return (
|
||||
|
@ -229,7 +227,6 @@ function ModWatchtools() {
|
|||
columns: ret.columns,
|
||||
types: ret.types,
|
||||
rows: ret.rows,
|
||||
ts: Date.now(),
|
||||
});
|
||||
}
|
||||
},
|
||||
|
@ -261,7 +258,6 @@ function ModWatchtools() {
|
|||
columns: ret.columns,
|
||||
types: ret.types,
|
||||
rows: ret.rows,
|
||||
ts: Date.now(),
|
||||
});
|
||||
}
|
||||
},
|
||||
|
@ -273,7 +269,7 @@ function ModWatchtools() {
|
|||
</div>
|
||||
<br />
|
||||
{(rows && columns && types) && (
|
||||
<React.Fragment key={ts}>
|
||||
<React.Fragment key="pxltable">
|
||||
<div className="modaldivider" />
|
||||
<table style={{ fontSize: 11 }}>
|
||||
<thead>
|
||||
|
@ -305,17 +301,17 @@ function ModWatchtools() {
|
|||
.map((row) => (
|
||||
<tr key={row[0]}>
|
||||
{row.slice(1).map((val, ind) => {
|
||||
const type = types[ind + 1];
|
||||
if (val === null) {
|
||||
return (<td key={type}>N/A</td>);
|
||||
return (<td>N/A</td>);
|
||||
}
|
||||
const type = types[ind + 1];
|
||||
switch (type) {
|
||||
case 'ts': {
|
||||
const date = new Date(val);
|
||||
let minutes = date.getMinutes();
|
||||
if (minutes < 10) minutes = `0${minutes}`;
|
||||
return (
|
||||
<td key={type} title={date.toLocaleDateString()}>
|
||||
<td title={date.toLocaleDateString()}>
|
||||
{`${date.getHours()}:${minutes}`}
|
||||
</td>
|
||||
);
|
||||
|
@ -327,14 +323,11 @@ function ModWatchtools() {
|
|||
&& canvases[cid].colors
|
||||
&& canvases[cid].colors[val];
|
||||
if (!rgb) {
|
||||
return (<td key={type}>{val}</td>);
|
||||
return (<td>{val}</td>);
|
||||
}
|
||||
const color = `rgb(${rgb[0]},${rgb[1]},${rgb[2]})`;
|
||||
return (
|
||||
<td
|
||||
key={type}
|
||||
style={{ backgroundColor: color }}
|
||||
>{val}</td>
|
||||
<td style={{ backgroundColor: color }}>{val}</td>
|
||||
);
|
||||
}
|
||||
case 'coord': {
|
||||
|
@ -343,7 +336,7 @@ function ModWatchtools() {
|
|||
const ident = canvases[cid] && canvases[cid].ident;
|
||||
const coords = `./#${ident},${val},47`;
|
||||
return (
|
||||
<td key={type}>
|
||||
<td>
|
||||
<a href={coords}>{val}</a>
|
||||
</td>
|
||||
);
|
||||
|
@ -351,7 +344,7 @@ function ModWatchtools() {
|
|||
case 'flag': {
|
||||
const flag = val.toLowerCase();
|
||||
return (
|
||||
<td key={type} title={val}><img
|
||||
<td title={val}><img
|
||||
style={{
|
||||
height: '1em',
|
||||
imageRendering: 'crisp-edges',
|
||||
|
@ -362,30 +355,12 @@ function ModWatchtools() {
|
|||
);
|
||||
}
|
||||
case 'cid': {
|
||||
const ident = canvases?.ident;
|
||||
return (<td key={type}>{ident}</td>);
|
||||
}
|
||||
case 'cidr': {
|
||||
return (
|
||||
<td key={type}>
|
||||
<span
|
||||
role="button"
|
||||
tabIndex={-1}
|
||||
style={{
|
||||
cursor: 'pointer',
|
||||
whiteSpace: 'initial',
|
||||
}}
|
||||
title={t`Copy to Clipboard`}
|
||||
onClick={() => copyTextToClipboard(
|
||||
val.slice(0, val.indexOf('/')),
|
||||
)}
|
||||
>{val}</span>
|
||||
</td>
|
||||
);
|
||||
const ident = canvases[val] && canvases[val].ident;
|
||||
return (<td>{ident}</td>);
|
||||
}
|
||||
case 'uuid': {
|
||||
return (
|
||||
<td key={type}>
|
||||
<td>
|
||||
<span
|
||||
role="button"
|
||||
tabIndex={-1}
|
||||
|
@ -402,10 +377,10 @@ function ModWatchtools() {
|
|||
case 'user': {
|
||||
const seperator = val.lastIndexOf(',');
|
||||
if (seperator === -1) {
|
||||
return (<td key={type}><span>{val}</span></td>);
|
||||
return (<td><span>{val}</span></td>);
|
||||
}
|
||||
return (
|
||||
<td key={type} title={val.slice(seperator + 1)}>
|
||||
<td title={val.slice(seperator + 1)}>
|
||||
<span>
|
||||
{val.slice(0, seperator)}
|
||||
</span>
|
||||
|
@ -413,7 +388,7 @@ function ModWatchtools() {
|
|||
);
|
||||
}
|
||||
default: {
|
||||
return (<td key={type}>{val}</td>);
|
||||
return (<td>{val}</td>);
|
||||
}
|
||||
}
|
||||
})}
|
||||
|
|
|
@ -40,7 +40,7 @@ function getStylesByWindowSize(
|
|||
paletteCols = 5;
|
||||
flexDirection = 'row';
|
||||
} else {
|
||||
// ordinary palette (one or two columns)
|
||||
// ordinary palette (one or two colums)
|
||||
spanSize = 24;
|
||||
paletteCols = (windowHeight < 801) ? 2 : 1;
|
||||
flexDirection = 'column';
|
||||
|
|
|
@ -6,23 +6,9 @@ import React from 'react';
|
|||
import { useSelector } from 'react-redux';
|
||||
|
||||
function Style() {
|
||||
let style = useSelector((state) => state.gui.style);
|
||||
if (!window.ssv.availableStyles) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// style for special occasions
|
||||
const curDate = new Date();
|
||||
const month = curDate.getMonth() + 1;
|
||||
const day = curDate.getDate();
|
||||
if ((day === 31 && month === 10) || (day === 1 && month === 11)) {
|
||||
// halloween
|
||||
style = 'dark-spooky';
|
||||
}
|
||||
|
||||
const style = useSelector((state) => state.gui.style);
|
||||
const cssUri = window.ssv.availableStyles[style];
|
||||
|
||||
return (style === 'default' || !cssUri) ? null
|
||||
return (style === 'default') ? null
|
||||
: (<link rel="stylesheet" type="text/css" href={cssUri} />);
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
import React, { useMemo } from 'react';
|
||||
import { useSelector, useDispatch } from 'react-redux';
|
||||
|
||||
import { selectWindowType, selectWindowArgs } from '../store/selectors/popup';
|
||||
import { selectWindowType, selectWIndowArgs } from '../store/selectors/popup';
|
||||
import {
|
||||
setWindowArgs,
|
||||
setWindowTitle,
|
||||
|
@ -16,7 +16,7 @@ import COMPONENTS from './windows';
|
|||
|
||||
const UIPopUp = () => {
|
||||
const windowType = useSelector(selectWindowType);
|
||||
const args = useSelector(selectWindowArgs);
|
||||
const args = useSelector(selectWIndowArgs);
|
||||
|
||||
const [Content] = COMPONENTS[windowType];
|
||||
|
||||
|
@ -27,7 +27,7 @@ const UIPopUp = () => {
|
|||
setArgs: (newArgs) => dispatch(setWindowArgs(newArgs)),
|
||||
setTitle: (title) => dispatch(setWindowTitle(title)),
|
||||
// eslint-disable-next-line max-len
|
||||
changeType: (newType, newTitle, newArgs) => dispatch(changeWindowType(newType, newTitle, newArgs)),
|
||||
changeType: (newType, newTitel, newArgs) => dispatch(changeWindowType(newType, newTitel, newArgs)),
|
||||
}), [args]);
|
||||
|
||||
return (
|
||||
|
|
|
@ -59,7 +59,7 @@ const UserAreaContent = () => {
|
|||
<div className="content">
|
||||
<UserMessages />
|
||||
<Stat
|
||||
text={t`Today Placed Pixels`}
|
||||
text={t`Todays Placed Pixels`}
|
||||
value={stats.dailyTotalPixels}
|
||||
/>
|
||||
<Stat
|
||||
|
|
|
@ -40,10 +40,10 @@ const Window = ({ id }) => {
|
|||
const resizeRef = useRef();
|
||||
|
||||
const selectWindowById = useMemo(() => makeSelectWindowById(id), []);
|
||||
const selectWindowPosById = useMemo(() => makeSelectWindowPosById(id), []);
|
||||
const selectWIndowPosById = useMemo(() => makeSelectWindowPosById(id), []);
|
||||
const selectWindowArgs = useMemo(() => makeSelectWindowArgs(id), []);
|
||||
const win = useSelector(selectWindowById);
|
||||
const position = useSelector(selectWindowPosById);
|
||||
const position = useSelector(selectWIndowPosById);
|
||||
const showWindows = useSelector(selectShowWindows);
|
||||
const args = useSelector(selectWindowArgs);
|
||||
|
||||
|
@ -54,7 +54,7 @@ const Window = ({ id }) => {
|
|||
setArgs: (newArgs) => dispatch(setWindowArgs(id, newArgs)),
|
||||
setTitle: (title) => dispatch(setWindowTitle(id, title)),
|
||||
// eslint-disable-next-line max-len
|
||||
changeType: (newType, newTitle, newArgs) => dispatch(changeWindowType(id, newType, newTitle, newArgs)),
|
||||
changeType: (newType, newTitel, newArgs) => dispatch(changeWindowType(id, newType, newTitel, newArgs)),
|
||||
}), [id, args]);
|
||||
|
||||
const {
|
||||
|
|