forked from ppfun/pixelplanet
update languages, add turkish
This commit is contained in:
parent
d75e65efec
commit
0e1c1a42b5
442
i18n/ssr-tr.po
Normal file
442
i18n/ssr-tr.po
Normal file
|
@ -0,0 +1,442 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: tr\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.0.1\n"
|
||||
|
||||
#: src/core/ChatProvider.js:370
|
||||
msgid "You can not send chat messages with proxy"
|
||||
msgstr "Proxy ile sohbete mesaj atamazsın."
|
||||
|
||||
#: 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:388
|
||||
msgid "You don't have access to this channel"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:404
|
||||
msgid "Your mail has to be verified in order to chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:409
|
||||
msgid "You are permanently muted, join our guilded to apppeal the mute"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:414
|
||||
#, javascript-format
|
||||
msgid "You are muted for another ${ timeMin } minutes"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:416
|
||||
msgid "You are muted for another ${ muted } seconds"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:424
|
||||
msgid "Ow no! Spam protection decided to mute you"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:435
|
||||
msgid "You can't send a message this long :("
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:439
|
||||
msgid "Please use int channel"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:443
|
||||
msgid "Your country is temporary muted from chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/ChatProvider.js:451
|
||||
msgid "Stop flooding."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:40
|
||||
msgid "You sent an empty password or invalid data :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:52
|
||||
msgid "This password-reset link isn't valid anymore :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:63
|
||||
msgid "Your passwords do not match :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:78
|
||||
msgid "User doesn't exist in our database :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:90
|
||||
msgid "Passowrd successfully changed."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/reset_password.js:109
|
||||
msgid "Invalid url :( Please check your mail again."
|
||||
msgstr ""
|
||||
|
||||
#: 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 ""
|
||||
|
||||
#: src/ssr-components/Globe.jsx:44
|
||||
msgid "Double click on globe to go back."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/Globe.jsx:45
|
||||
msgid "Loading..."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/Globe.jsx:51
|
||||
msgid "PixelPlanet.Fun 3DGlobe"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/Globe.jsx:52
|
||||
msgid "A 3D globe of our whole map"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/Main.jsx:70
|
||||
msgid "PixelPlanet.fun"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/Main.jsx:72
|
||||
msgid "Place color pixels on an map styled canvas with other players online"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:65
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"We already sent you a verification mail, you can request another one in "
|
||||
"${ minLeft } minutes."
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:75
|
||||
msgid "Welcome ${ name } to PixelPlanet, plese verify your mail"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:77
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }"
|
||||
msgstr ""
|
||||
|
||||
#: 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 ""
|
||||
|
||||
#: src/core/mail.js:78
|
||||
msgid "Click to Verify"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:78 src/core/mail.js:128
|
||||
msgid "Or by copying following url:"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:79
|
||||
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"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:98
|
||||
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"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:125
|
||||
msgid "You forgot your password for PixelPlanet? Get a new one here"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:127
|
||||
msgid "Hello"
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:128
|
||||
msgid ""
|
||||
"You requested to get a new password. You can change your password within the "
|
||||
"next 30min here: "
|
||||
msgstr ""
|
||||
|
||||
#: src/core/mail.js:128 src/ssr-components/PasswordReset.jsx:19
|
||||
#: src/ssr-components/PasswordReset.jsx:28
|
||||
msgid "Reset Password"
|
||||
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 })."
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:21
|
||||
#: src/ssr-components/RedirectionPage.jsx:15
|
||||
msgid "Click here"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:22
|
||||
msgid "to go back to pixelplanet"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:29
|
||||
#, javascript-format
|
||||
msgid "Hello ${ name }, you can set your new password here:"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:33
|
||||
msgid "New Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:41
|
||||
msgid "Confirm New Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:47
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:52
|
||||
msgid "PixelPlanet.fun Password Reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/PasswordReset.jsx:53
|
||||
msgid "Reset your password here"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:22
|
||||
msgid "No captcha text given"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:27
|
||||
msgid "No captcha id given"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:61 src/routes/api/captcha.js:41
|
||||
msgid "You took too long, try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:64 src/routes/api/captcha.js:47
|
||||
msgid "You failed your captcha"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:67 src/routes/api/captcha.js:53
|
||||
msgid "Unknown Captcha Error"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/captcha.js:60
|
||||
msgid "Server error occured"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/modtools.js:52
|
||||
msgid "You are not logged in"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/modtools.js:64
|
||||
msgid "You are not allowed to access this page"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/modtools.js:166
|
||||
msgid "Just admins can do that"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:18
|
||||
msgid "Email can't be empty."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:19
|
||||
msgid "Email should be at least 5 characters long."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:20
|
||||
msgid "Email can't be longer than 40 characters."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:21
|
||||
msgid "Email should at least contain a dot"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:23
|
||||
msgid "Email should contain a @"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:30
|
||||
msgid "Name can't be empty."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:31
|
||||
msgid "Name must be at least 2 characters long"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:32
|
||||
msgid "Name must be shorter than 26 characters"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:39
|
||||
msgid "Name contains invalid character like @, /, \\ or #"
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:54
|
||||
msgid "No password given."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:57
|
||||
msgid "Password must be at least 6 characters long."
|
||||
msgstr ""
|
||||
|
||||
#: src/utils/validation.js:60
|
||||
msgid "Password must be shorter than 60 characters."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:33
|
||||
msgid "No Captcha given"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:36
|
||||
msgid "E-Mail already in use."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:38
|
||||
msgid "Username already in use."
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:91
|
||||
msgid "Failed to create new user :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/register.js:106
|
||||
msgid "Failed to establish session after register :("
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/logout.js:13
|
||||
msgid "You are not even logged in."
|
||||
msgstr ""
|
||||
|
||||
#: 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/delete_account.js:48
|
||||
msgid "Incorrect password!"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/verify.js:25 src/routes/api/auth/verify.js:32
|
||||
msgid "Mail verification"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/verify.js:26
|
||||
msgid "You are now verified :)"
|
||||
msgstr ""
|
||||
|
||||
#: src/routes/api/auth/verify.js:32
|
||||
msgid ""
|
||||
"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"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/RedirectionPage.jsx:21
|
||||
#, javascript-format
|
||||
msgid "Or ${ clickHere } to go back to pixelplanet"
|
||||
msgstr ""
|
||||
|
||||
#: src/ssr-components/RedirectionPage.jsx:25
|
||||
msgid "PixelPlanet.fun Accounts"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:18
|
||||
msgid "Earth"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:19
|
||||
msgid "Moon"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:20
|
||||
msgid "3D Canvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:21
|
||||
msgid "Coronavirus"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:22
|
||||
msgid "PixelZone"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:23
|
||||
msgid "PixelCanvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:24
|
||||
msgid "1bit"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:25
|
||||
msgid "Top10"
|
||||
msgstr ""
|
||||
|
||||
#: 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) "
|
||||
"or art larger than 1.5k x 1.5k pixels."
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:30
|
||||
msgid "Place Voxels on a 3D canvas with others"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:31
|
||||
msgid "Special canvas to spread awareness of SARS-CoV2"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:32
|
||||
msgid "Mirror of PixelZone"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:33
|
||||
msgid "Mirror of PixelCanvas"
|
||||
msgstr ""
|
||||
|
||||
#: src/canvasesDesc.js:34
|
||||
msgid "Black and White canvas"
|
||||
msgstr ""
|
||||
|
||||
#: 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 ""
|
1364
i18n/tr.po
Normal file
1364
i18n/tr.po
Normal file
File diff suppressed because it is too large
Load Diff
|
@ -1,4 +1,6 @@
|
|||
/* @flow */
|
||||
/*
|
||||
* class for chat communications
|
||||
*/
|
||||
import { Op } from 'sequelize';
|
||||
import logger from './logger';
|
||||
import redis from '../data/redis';
|
||||
|
@ -310,7 +312,7 @@ export class ChatProvider {
|
|||
this.mutedCountries.push(cc);
|
||||
this.broadcastChatMessage(
|
||||
'info',
|
||||
`Country ${cc} has been muted by ${initiator}`,
|
||||
`Country ${cc} has been muted from en by ${initiator}`,
|
||||
channelId,
|
||||
this.infoUserId,
|
||||
);
|
||||
|
@ -328,7 +330,7 @@ export class ChatProvider {
|
|||
this.mutedCountries = this.mutedCountries.filter((c) => c !== cc);
|
||||
this.broadcastChatMessage(
|
||||
'info',
|
||||
`Country ${cc} has been unmuted by ${initiator}`,
|
||||
`Country ${cc} has been unmuted from en by ${initiator}`,
|
||||
channelId,
|
||||
this.infoUserId,
|
||||
);
|
||||
|
@ -337,7 +339,7 @@ export class ChatProvider {
|
|||
if (this.mutedCountries.length) {
|
||||
this.broadcastChatMessage(
|
||||
'info',
|
||||
`Countries ${this.mutedCountries} unmuted by ${initiator}`,
|
||||
`Countries ${this.mutedCountries} unmuted from en by ${initiator}`,
|
||||
channelId,
|
||||
this.infoUserId,
|
||||
);
|
||||
|
@ -449,8 +451,10 @@ export class ChatProvider {
|
|||
return t`Please use int channel`;
|
||||
}
|
||||
|
||||
if (this.mutedCountries.includes(country)) {
|
||||
return t`Your country is temporary muted from chat`;
|
||||
if (channelId === this.enChannelId
|
||||
&& this.mutedCountries.includes(country)
|
||||
) {
|
||||
return t`Your country is temporary muted from this chat channel`;
|
||||
}
|
||||
|
||||
if (user.last_message && user.last_message === message) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* @flow
|
||||
* provide location and lang specific features
|
||||
*/
|
||||
|
||||
import ccCoords from '../data/countrycode-coords-array.json';
|
||||
|
@ -11,7 +11,7 @@ import ccCoords from '../data/countrycode-coords-array.json';
|
|||
* @param cc Two letter country code
|
||||
* @return coords X/Y coordinates of the country on the canvas
|
||||
*/
|
||||
export function ccToCoords(cc: string) {
|
||||
export function ccToCoords(cc) {
|
||||
if (!cc) {
|
||||
return [0, 0];
|
||||
}
|
||||
|
@ -56,16 +56,12 @@ export function languageFromLocalisation(localisation) {
|
|||
*/
|
||||
const lang2CC = {
|
||||
en: 'gb',
|
||||
de: 'de',
|
||||
dz: 'bt',
|
||||
hy: 'am',
|
||||
uk: 'ua',
|
||||
ru: 'ru',
|
||||
fr: 'fr',
|
||||
es: 'es',
|
||||
ca: 'ct',
|
||||
};
|
||||
export function langCodeToCC(lang: string) {
|
||||
export function langCodeToCC(lang) {
|
||||
return lang2CC[lang] || lang;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user