mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-12-17 22:10:23 +01:00
Compare commits
1009 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4686ae9923 | ||
|
|
616bc68ebd | ||
|
|
8bbd7d971b | ||
|
|
9062a8f02b | ||
|
|
c859586269 | ||
|
|
ff5eeb3a85 | ||
|
|
38dd3d4281 | ||
|
|
722b629572 | ||
|
|
6680c2d475 | ||
|
|
ba6af71150 | ||
|
|
652e247d1b | ||
|
|
92c869e886 | ||
|
|
d65546a34d | ||
|
|
9487f3a028 | ||
|
|
d3aa353d73 | ||
|
|
9bca777320 | ||
|
|
149120a186 | ||
|
|
832430ed37 | ||
|
|
5c0bcd7e5d | ||
|
|
161b934827 | ||
|
|
a12bb9a32c | ||
|
|
def600e927 | ||
|
|
f7ccdc3668 | ||
|
|
fdaccc804c | ||
|
|
ff5f3b264a | ||
|
|
845b97687a | ||
|
|
57ebcb8b8a | ||
|
|
39a75ea2d7 | ||
|
|
385760bdda | ||
|
|
2911de0af9 | ||
|
|
cba9ad3d60 | ||
|
|
16537bc636 | ||
|
|
311fd00ecd | ||
|
|
b7602c6e80 | ||
|
|
1fe1085863 | ||
|
|
b5b5894301 | ||
|
|
fd773807e9 | ||
|
|
25ccc573c0 | ||
|
|
255f50343c | ||
|
|
28c57b6635 | ||
|
|
a0d70b48db | ||
|
|
cc2ab12f29 | ||
|
|
1b00d0f739 | ||
|
|
b3278cf8e8 | ||
|
|
6a837632fa | ||
|
|
cfcfc8e0b1 | ||
|
|
a46aaf2c87 | ||
|
|
5c2a70254f | ||
|
|
d284e89d6c | ||
|
|
0bfa8d337a | ||
|
|
2c8e8a1f1c | ||
|
|
2f19f4106a | ||
|
|
79083004e4 | ||
|
|
c652d1b80e | ||
|
|
4d9e7fce22 | ||
|
|
7363c71180 | ||
|
|
63fd3f259f | ||
|
|
dc0229fc73 | ||
|
|
2e1d1ac665 | ||
|
|
c16689503d | ||
|
|
2c033bf286 | ||
|
|
dc2a2aa98e | ||
|
|
607e88b3c3 | ||
|
|
ecfa8f7a7d | ||
|
|
e4e9020e1f | ||
|
|
c8f87e5d36 | ||
|
|
60e052e788 | ||
|
|
3bb9c9531f | ||
|
|
939e623547 | ||
|
|
39cac43b96 | ||
|
|
a7a4edfd37 | ||
|
|
f793536131 | ||
|
|
f753cfb1c9 | ||
|
|
b052ed3504 | ||
|
|
eb5746b2b4 | ||
|
|
af4a272264 | ||
|
|
57453f33ab | ||
|
|
a1c8902b4e | ||
|
|
aaa1fae558 | ||
|
|
4d6a6f64b0 | ||
|
|
f9fecf4bc1 | ||
|
|
0fab6c243c | ||
|
|
c87c99eadd | ||
|
|
ed714cdf77 | ||
|
|
98ff75b9c3 | ||
|
|
63eeee4394 | ||
|
|
9db7f0f9a0 | ||
|
|
f253b11d71 | ||
|
|
0828caab32 | ||
|
|
943e268ffc | ||
|
|
27518716a0 | ||
|
|
a3cadff1d3 | ||
|
|
d096a639d6 | ||
|
|
891731ca52 | ||
|
|
08e39d150e | ||
|
|
06238f6894 | ||
|
|
c33b369858 | ||
|
|
72e14e6db6 | ||
|
|
d102ff0704 | ||
|
|
bf9b633d50 | ||
|
|
c9f0e61b57 | ||
|
|
d3d321f1b7 | ||
|
|
57a3d53dee | ||
|
|
26defd7dca | ||
|
|
e31bf9131f | ||
|
|
5a1c2b9ddf | ||
|
|
288d507eb6 | ||
|
|
835ad3ea53 | ||
|
|
bc9ede7b6c | ||
|
|
4b3aa26abd | ||
|
|
caec718092 | ||
|
|
3fb7eb766b | ||
|
|
ca92372676 | ||
|
|
70f6c396fc | ||
|
|
bd8a77a22b | ||
|
|
2c45dc6450 | ||
|
|
0bf98b5494 | ||
|
|
0c2d2a28ba | ||
|
|
a526577927 | ||
|
|
d2217b8137 | ||
|
|
740c52fc4f | ||
|
|
4603484558 | ||
|
|
22c541d95f | ||
|
|
f3719df997 | ||
|
|
3ade5da00f | ||
|
|
c6ae6fae54 | ||
|
|
25f6b816ed | ||
|
|
c379753341 | ||
|
|
4a3255d4fd | ||
|
|
af1fa11606 | ||
|
|
2a6de59277 | ||
|
|
5fe69e0386 | ||
|
|
fd8a885145 | ||
|
|
4072172c8e | ||
|
|
c20a848c7f | ||
|
|
ba1260923f | ||
|
|
6502dd2561 | ||
|
|
fa27461abc | ||
|
|
dd38ee96fa | ||
|
|
56200b0fdf | ||
|
|
22a619d9c7 | ||
|
|
7efc0619cc | ||
|
|
f1a3815ddc | ||
|
|
aab2bc0b39 | ||
|
|
c4bc51b834 | ||
|
|
22e7b2d3b2 | ||
|
|
21522e59c4 | ||
|
|
96c27d29f4 | ||
|
|
2f955c3af4 | ||
|
|
cb5ee2a141 | ||
|
|
99dc37bd9c | ||
|
|
d2938ea509 | ||
|
|
81c929fa77 | ||
|
|
d96a1f0365 | ||
|
|
5160ab1ed1 | ||
|
|
c0622743d2 | ||
|
|
4c62590bc8 | ||
|
|
a926a11e70 | ||
|
|
ad21e73491 | ||
|
|
eb5b8ccec3 | ||
|
|
1e57c5d001 | ||
|
|
e5a33539d2 | ||
|
|
9f8b274e24 | ||
|
|
94fa212eab | ||
|
|
c026a64e8e | ||
|
|
6f140384e0 | ||
|
|
4317b3c872 | ||
|
|
491e0060d4 | ||
|
|
fe45fc967d | ||
|
|
f5b448c300 | ||
|
|
e46cda835a | ||
|
|
0bd48ef023 | ||
|
|
e3cf528b57 | ||
|
|
6ccb35576c | ||
|
|
03ae7db561 | ||
|
|
f67053df52 | ||
|
|
04be40158c | ||
|
|
8ba05c08fe | ||
|
|
577a646adc | ||
|
|
3eb922393f | ||
|
|
61f069a071 | ||
|
|
d94668216d | ||
|
|
4554ef2195 | ||
|
|
15d2f54cd0 | ||
|
|
46fd1843ba | ||
|
|
162a7b9e0c | ||
|
|
584daf12a0 | ||
|
|
74099d1d8c | ||
|
|
8d23265324 | ||
|
|
6b5b0b9eec | ||
|
|
5bc078d9df | ||
|
|
d4d99cba7c | ||
|
|
36cfbbbc58 | ||
|
|
c324d71727 | ||
|
|
fa87d883dc | ||
|
|
429c4022f0 | ||
|
|
3e666adfea | ||
|
|
d813bda883 | ||
|
|
5c6dfb7462 | ||
|
|
cfdd4ec164 | ||
|
|
2ed6b78cc5 | ||
|
|
666cef4029 | ||
|
|
36a49cd994 | ||
|
|
cd99324286 | ||
|
|
8f5bf1a7ed | ||
|
|
188c667580 | ||
|
|
d9a7547e63 | ||
|
|
468d2be668 | ||
|
|
86a6979606 | ||
|
|
87b9a60610 | ||
|
|
7289d50e6c | ||
|
|
fc75e3258d | ||
|
|
d02f7e0e42 | ||
|
|
6ac04e9da7 | ||
|
|
aeafbe6170 | ||
|
|
e414008c59 | ||
|
|
fd2edcaf6f | ||
|
|
a8c818c6cd | ||
|
|
f2bfb4c0d1 | ||
|
|
a9bf9745b6 | ||
|
|
1adc3b4ea7 | ||
|
|
82c4488505 | ||
|
|
6ccdf187ea | ||
|
|
f6525a13c8 | ||
|
|
2a66aad078 | ||
|
|
1c497f842a | ||
|
|
50ac813388 | ||
|
|
b3b3300bd6 | ||
|
|
c2fab07236 | ||
|
|
be8385e8dc | ||
|
|
5f12679426 | ||
|
|
de58f4ff6b | ||
|
|
710df626b5 | ||
|
|
698f598a30 | ||
|
|
203a15204e | ||
|
|
675968f0f3 | ||
|
|
5a940778ee | ||
|
|
7a7aeb131e | ||
|
|
02dbce57fb | ||
|
|
1f674f10e2 | ||
|
|
05894d14c6 | ||
|
|
200f74f1c7 | ||
|
|
bbfec7d443 | ||
|
|
456b844e61 | ||
|
|
08c1dad3ee | ||
|
|
f417e07b9d | ||
|
|
697d2636f9 | ||
|
|
8be9854062 | ||
|
|
612b8f01b6 | ||
|
|
635393a274 | ||
|
|
ad12886d19 | ||
|
|
2974f1ba8a | ||
|
|
765975e667 | ||
|
|
08e883de44 | ||
|
|
240056d169 | ||
|
|
69ed8ac45d | ||
|
|
19f0f6b7e0 | ||
|
|
0305ad989c | ||
|
|
f74383bba4 | ||
|
|
23f450adbd | ||
|
|
5414c268a0 | ||
|
|
9f35a2b251 | ||
|
|
1caddb6182 | ||
|
|
a70b73df81 | ||
|
|
4ab288acae | ||
|
|
5d43aa3212 | ||
|
|
a7d73d4106 | ||
|
|
311d02dbe1 | ||
|
|
b4731ad47b | ||
|
|
7be0830751 | ||
|
|
84c19921b9 | ||
|
|
65537d997f | ||
|
|
a8de1c1465 | ||
|
|
d7c27b35ab | ||
|
|
eb1fe77510 | ||
|
|
9b40c44fd8 | ||
|
|
96c37c25b0 | ||
|
|
b0182f702f | ||
|
|
3a3d45155e | ||
|
|
3712fe1fb5 | ||
|
|
71b41239ac | ||
|
|
db1cc6b8d2 | ||
|
|
a5d7fee623 | ||
|
|
bb0b6d9db4 | ||
|
|
d747ce5760 | ||
|
|
a907fa2187 | ||
|
|
9fa3675424 | ||
|
|
501935d359 | ||
|
|
a77a761433 | ||
|
|
52cf224e5a | ||
|
|
5ee0ed401f | ||
|
|
1a13f2a54a | ||
|
|
ce9c17f8e5 | ||
|
|
b685194dae | ||
|
|
1868a02bd7 | ||
|
|
aa62c52580 | ||
|
|
a2af8105ec | ||
|
|
60f1b9679a | ||
|
|
917f76feab | ||
|
|
f3fa2f10ed | ||
|
|
c1ac92ac19 | ||
|
|
2d4383c7b0 | ||
|
|
fc7a882877 | ||
|
|
b34420c2d7 | ||
|
|
f060a36853 | ||
|
|
b51127bd9c | ||
|
|
f5b758245f | ||
|
|
779fd0405e | ||
|
|
3c1ee1f59f | ||
|
|
9b8cc9fe6c | ||
|
|
835886998b | ||
|
|
428a431164 | ||
|
|
e42365f7c1 | ||
|
|
659d0f68cb | ||
|
|
4bbd3b47c0 | ||
|
|
e26f8c3290 | ||
|
|
a36391864a | ||
|
|
e4caa83158 | ||
|
|
8522af504a | ||
|
|
64468a6f16 | ||
|
|
357de92624 | ||
|
|
f3a113d318 | ||
|
|
112a1e8c85 | ||
|
|
3da6466045 | ||
|
|
f9887de478 | ||
|
|
7b49effc14 | ||
|
|
1ddb90720c | ||
|
|
23b9b21cdd | ||
|
|
9befa6aca7 | ||
|
|
ff770e3656 | ||
|
|
6d31fee3f5 | ||
|
|
fbd875b397 | ||
|
|
faf4163a6e | ||
|
|
325815a78d | ||
|
|
861a3ca8a8 | ||
|
|
0a534b20e3 | ||
|
|
03ee524121 | ||
|
|
b443aec450 | ||
|
|
1f0902bbe8 | ||
|
|
00541b2bc8 | ||
|
|
0ff37f9e0e | ||
|
|
bfaf50908d | ||
|
|
1511a0c3fe | ||
|
|
b97c9e4467 | ||
|
|
7dc309fc16 | ||
|
|
fcbb48bb77 | ||
|
|
cb4fb62d4a | ||
|
|
38e7ecbb41 | ||
|
|
ee820341d5 | ||
|
|
74a3977d42 | ||
|
|
e6244c547a | ||
|
|
9af3007f3d | ||
|
|
4d5ed784a1 | ||
|
|
13cd2e41bb | ||
|
|
ebbb1bac26 | ||
|
|
81b32fc095 | ||
|
|
a6c75eea88 | ||
|
|
1e6f5d822d | ||
|
|
adae2bd13e | ||
|
|
818182bc00 | ||
|
|
4590fe6155 | ||
|
|
a529c3b179 | ||
|
|
7f933bc747 | ||
|
|
3efc49dd72 | ||
|
|
def5d23744 | ||
|
|
633cef6dd7 | ||
|
|
c62e7ed641 | ||
|
|
9750a36dee | ||
|
|
3e8c29e5f9 | ||
|
|
8aa75b7af4 | ||
|
|
cc487a7fc8 | ||
|
|
4364b50ecf | ||
|
|
d2e69884b5 | ||
|
|
c4c8964f82 | ||
|
|
9d5daa0bf4 | ||
|
|
747f212f1a | ||
|
|
9170ee831a | ||
|
|
fc79b3a932 | ||
|
|
48acb0082e | ||
|
|
68f985c6da | ||
|
|
fdbd9a816f | ||
|
|
d0b8337075 | ||
|
|
d1540322c9 | ||
|
|
8eb58bf5fe | ||
|
|
b7f55e8453 | ||
|
|
8007bb0644 | ||
|
|
e0edb71a8a | ||
|
|
1cbf5ddfe9 | ||
|
|
7cf3719c80 | ||
|
|
410d9fa4fa | ||
|
|
b6639403fe | ||
|
|
f4d1fbc4e3 | ||
|
|
102819426c | ||
|
|
bf54859a27 | ||
|
|
872318442f | ||
|
|
13daf8d167 | ||
|
|
fd373ed8e7 | ||
|
|
37235557bb | ||
|
|
00fb3ab909 | ||
|
|
61b6037991 | ||
|
|
0d223ef88d | ||
|
|
87435c1a9e | ||
|
|
ce24c6dc04 | ||
|
|
4b1b98e229 | ||
|
|
f0ed816edb | ||
|
|
3d9e86d9b2 | ||
|
|
cd41e192d1 | ||
|
|
87f57b8cd3 | ||
|
|
d68c44fd0a | ||
|
|
7c2b041633 | ||
|
|
a9e12f4174 | ||
|
|
b1edc59987 | ||
|
|
a5f63a5ac7 | ||
|
|
9865f78cbb | ||
|
|
768c17263c | ||
|
|
25cb450f40 | ||
|
|
3019023d38 | ||
|
|
936ea5f686 | ||
|
|
2f8e6a1f2b | ||
|
|
2ea5f85d9b | ||
|
|
e6b4a45cda | ||
|
|
e22c13abd4 | ||
|
|
3bdb98e747 | ||
|
|
712d5bce5b | ||
|
|
94cf29d42c | ||
|
|
b07a522c60 | ||
|
|
984b17349a | ||
|
|
4ce6341d85 | ||
|
|
83312ad53a | ||
|
|
14e46a87a6 | ||
|
|
1424acc88e | ||
|
|
8ed06eb773 | ||
|
|
04084807c2 | ||
|
|
da7dcd99a8 | ||
|
|
6a8a5a9de0 | ||
|
|
793a0a6772 | ||
|
|
2bfc33edb7 | ||
|
|
d314b9cae2 | ||
|
|
d28fb153c7 | ||
|
|
7ec8393004 | ||
|
|
2423bd18eb | ||
|
|
1a34327f9d | ||
|
|
59545d740c | ||
|
|
f47550d23e | ||
|
|
26b2ef1543 | ||
|
|
989ca19df5 | ||
|
|
acf1b76da8 | ||
|
|
76480d4d31 | ||
|
|
c0c85c24cf | ||
|
|
64cc0f244d | ||
|
|
5bf46864ed | ||
|
|
9e1a049fd5 | ||
|
|
100f31be81 | ||
|
|
e72ec429a2 | ||
|
|
e74d39889e | ||
|
|
bf3f20bf8b | ||
|
|
2c7d9e1a7c | ||
|
|
0cb0dafae3 | ||
|
|
03de918f10 | ||
|
|
011c42bde3 | ||
|
|
da4014eb71 | ||
|
|
8bba811aaf | ||
|
|
52a53df80d | ||
|
|
8965855218 | ||
|
|
518c6f7cfa | ||
|
|
e0c8989e8b | ||
|
|
94efa6dd87 | ||
|
|
5f47f2226a | ||
|
|
3deb423c55 | ||
|
|
49dcffcbab | ||
|
|
68e761bed0 | ||
|
|
273e26ddb1 | ||
|
|
9b083a6a66 | ||
|
|
86bd85bba4 | ||
|
|
646c5705cf | ||
|
|
2e04501224 | ||
|
|
348d05d3d1 | ||
|
|
b63c0df8a2 | ||
|
|
5a79b99a7a | ||
|
|
9f7196f5b0 | ||
|
|
772f4c103a | ||
|
|
aeae76c28d | ||
|
|
b565f3ac0a | ||
|
|
8af5102912 | ||
|
|
81a5a4cfe0 | ||
|
|
8e8375cbba | ||
|
|
8bee231d80 | ||
|
|
b278f27ffe | ||
|
|
e3e737458e | ||
|
|
beaa52fff5 | ||
|
|
9d78a204df | ||
|
|
5128f7d2f9 | ||
|
|
6b20cf5cff | ||
|
|
5337a31eb9 | ||
|
|
8bea0bb6e5 | ||
|
|
f2b24eb72a | ||
|
|
8c097357fc | ||
|
|
79f3659e55 | ||
|
|
99e774d196 | ||
|
|
ef3b6a2450 | ||
|
|
64c0e1df61 | ||
|
|
389f74b615 | ||
|
|
2de108153f | ||
|
|
2914c74587 | ||
|
|
104fc2d273 | ||
|
|
9e9b138afb | ||
|
|
e7c2bc5d5d | ||
|
|
e86650a6af | ||
|
|
fb6026f95f | ||
|
|
908f5f2fd4 | ||
|
|
080c54d414 | ||
|
|
e18ad61ff6 | ||
|
|
356f577a74 | ||
|
|
85dfedeedc | ||
|
|
7ae7c50f56 | ||
|
|
22e20b961e | ||
|
|
d14cd254a5 | ||
|
|
16f62e6502 | ||
|
|
7d6c81160b | ||
|
|
aaef0ad282 | ||
|
|
d62cdd5127 | ||
|
|
f67bc8d056 | ||
|
|
64e13df14c | ||
|
|
3ad3e781f3 | ||
|
|
28ed49a1d2 | ||
|
|
2fbaed9cdf | ||
|
|
fc00791125 | ||
|
|
5576ef0d1e | ||
|
|
e49dfc7266 | ||
|
|
83a679fc15 | ||
|
|
7a5383748c | ||
|
|
c0bce71984 | ||
|
|
6a47aacdfd | ||
|
|
6a9145d90e | ||
|
|
48337e4f51 | ||
|
|
113d35887c | ||
|
|
63367bd670 | ||
|
|
673145d413 | ||
|
|
a3f0f58ebe | ||
|
|
ae1d226218 | ||
|
|
612aa4e55b | ||
|
|
09a5d92dba | ||
|
|
9075a8d4c9 | ||
|
|
97d01de155 | ||
|
|
ddd6ed9e8c | ||
|
|
be11577aa4 | ||
|
|
9023060008 | ||
|
|
12e00ec497 | ||
|
|
77d0b095c8 | ||
|
|
aa44894db2 | ||
|
|
866adab648 | ||
|
|
04dbd5766d | ||
|
|
66bbbfcd22 | ||
|
|
420649d3bd | ||
|
|
d544b19220 | ||
|
|
3a0b92a0e4 | ||
|
|
14a2db4b2e | ||
|
|
d16cfb89e0 | ||
|
|
5cc30ca1a0 | ||
|
|
2e24224449 | ||
|
|
82708d65c6 | ||
|
|
46e022e97f | ||
|
|
647b15c7ef | ||
|
|
7332ba9c25 | ||
|
|
6fe093324a | ||
|
|
63a5002b53 | ||
|
|
92addc349b | ||
|
|
957800b2c3 | ||
|
|
f00a3dbf49 | ||
|
|
604f883ac2 | ||
|
|
1378e1155f | ||
|
|
682ba8fb1a | ||
|
|
110fd863e4 | ||
|
|
78763834fe | ||
|
|
c120f5c2c6 | ||
|
|
a0860abaaa | ||
|
|
598049e077 | ||
|
|
21fe3f2596 | ||
|
|
62609b2db6 | ||
|
|
7f43fd4843 | ||
|
|
1db2a447d7 | ||
|
|
48ee8c1370 | ||
|
|
7f81a0b0ad | ||
|
|
51c520f888 | ||
|
|
3b8e31c31f | ||
|
|
f531a5362d | ||
|
|
1723894e5a | ||
|
|
fb3251c269 | ||
|
|
03b106b03a | ||
|
|
d430ef3983 | ||
|
|
d5e473609c | ||
|
|
dfbac595b6 | ||
|
|
9b0ba6c7a4 | ||
|
|
722d1497c3 | ||
|
|
083ba12ee0 | ||
|
|
142536b659 | ||
|
|
83ab462ff5 | ||
|
|
510343b9d5 | ||
|
|
e7a52b615b | ||
|
|
392be78554 | ||
|
|
0a2d543186 | ||
|
|
fa92eb4d5c | ||
|
|
4913866785 | ||
|
|
0c5881b51f | ||
|
|
17d7916fe9 | ||
|
|
cbb3ff26e9 | ||
|
|
1ffa498807 | ||
|
|
3a172711f4 | ||
|
|
14a5de6d9d | ||
|
|
f7c70e2a7a | ||
|
|
13609edf82 | ||
|
|
2c89d50322 | ||
|
|
f9405c0423 | ||
|
|
6760ce00cc | ||
|
|
49a73e1665 | ||
|
|
c213f77f91 | ||
|
|
b8845181f6 | ||
|
|
4d4f39a44f | ||
|
|
126f3182fd | ||
|
|
5ac5d20e4b | ||
|
|
1ce3c9ca2d | ||
|
|
7ad242b981 | ||
|
|
e952a873a8 | ||
|
|
1abe35092b | ||
|
|
785790c414 | ||
|
|
5521e6143f | ||
|
|
033e078aeb | ||
|
|
0674258793 | ||
|
|
c12d90ddfb | ||
|
|
8de2d1f58d | ||
|
|
2ecfcc582f | ||
|
|
d1fcb50c7d | ||
|
|
b7c4647e9a | ||
|
|
8ca6d51d8d | ||
|
|
e97d5b2e0e | ||
|
|
23b14b3443 | ||
|
|
99e0a02b4c | ||
|
|
ab2580cc5f | ||
|
|
b6bd955131 | ||
|
|
51436fd2d9 | ||
|
|
4bed05a622 | ||
|
|
396dffd60f | ||
|
|
916f1c7ce1 | ||
|
|
08b0462695 | ||
|
|
a69eafd9f7 | ||
|
|
0202666ed0 | ||
|
|
7cbaa90d36 | ||
|
|
04175c92d9 | ||
|
|
80d7ae597b | ||
|
|
a31525c79f | ||
|
|
1b526026a0 | ||
|
|
1c21ca78dc | ||
|
|
fa39b5e46b | ||
|
|
f5fce863f9 | ||
|
|
ba9a5ad7d7 | ||
|
|
6b23977a46 | ||
|
|
7daf3a34a7 | ||
|
|
1ea295ed1b | ||
|
|
e1758e0c36 | ||
|
|
9ea10ba8ec | ||
|
|
bea1d053b4 | ||
|
|
552c56f3d1 | ||
|
|
2086ddf386 | ||
|
|
354268bccd | ||
|
|
fba0e95aeb | ||
|
|
6581c90475 | ||
|
|
7e6f29e007 | ||
|
|
7b14716eb8 | ||
|
|
702b1554fb | ||
|
|
73fb653ddf | ||
|
|
c905f96108 | ||
|
|
0b58e2fea3 | ||
|
|
82d863b9c8 | ||
|
|
259f0f96f1 | ||
|
|
347e37a224 | ||
|
|
8d8731c609 | ||
|
|
35be69d6cd | ||
|
|
3ad509b93a | ||
|
|
fdf06c0500 | ||
|
|
fe7726d249 | ||
|
|
0f4fcd8e0b | ||
|
|
9cd352c49a | ||
|
|
d177481f94 | ||
|
|
6012223b81 | ||
|
|
9eb8924bf2 | ||
|
|
9c1216eb63 | ||
|
|
d5453efdac | ||
|
|
15c2b124e3 | ||
|
|
6eef866320 | ||
|
|
067d1ae404 | ||
|
|
21459fff84 | ||
|
|
04afe7dc4b | ||
|
|
e0fba796c7 | ||
|
|
7183187be8 | ||
|
|
969c3a77cf | ||
|
|
b919d2ee77 | ||
|
|
4be8f3ec75 | ||
|
|
0bb5971915 | ||
|
|
a445e3f7b1 | ||
|
|
871cf8a3b7 | ||
|
|
5292a47a96 | ||
|
|
b665aeee83 | ||
|
|
81e4bcd358 | ||
|
|
b06ff89e02 | ||
|
|
deac12c540 | ||
|
|
4f38a33702 | ||
|
|
10680d47b0 | ||
|
|
d0bc5ec9c7 | ||
|
|
78033dbf5c | ||
|
|
d7c367ae91 | ||
|
|
7f5984d1fd | ||
|
|
c974256600 | ||
|
|
671ec8532c | ||
|
|
47c1092842 | ||
|
|
776fb29dce | ||
|
|
3d93a76508 | ||
|
|
8c98f47688 | ||
|
|
0d6be40238 | ||
|
|
14ba1ff8c0 | ||
|
|
ae1528dc7e | ||
|
|
2d79169855 | ||
|
|
d51683f62e | ||
|
|
2e2995d3bd | ||
|
|
c7396f58cd | ||
|
|
ee3b0c93c3 | ||
|
|
0864480433 | ||
|
|
cb8ce066c8 | ||
|
|
8b573bff39 | ||
|
|
9791dfb9ea | ||
|
|
23485fcbf3 | ||
|
|
207bfa8960 | ||
|
|
0a1fa72bd8 | ||
|
|
32e08ba419 | ||
|
|
807d4b7e2e | ||
|
|
114d0506e1 | ||
|
|
f0797493ee | ||
|
|
8e114c2093 | ||
|
|
a75727bbbd | ||
|
|
653850661e | ||
|
|
79265b9e83 | ||
|
|
c1b61522f7 | ||
|
|
c458a7f7b2 | ||
|
|
9852809c2c | ||
|
|
1d2d69fa45 | ||
|
|
556e7066e8 | ||
|
|
f8cfd82667 | ||
|
|
0a44d3f5e0 | ||
|
|
d485b65b67 | ||
|
|
9ab74b0a61 | ||
|
|
7825b8b951 | ||
|
|
2a88e08977 | ||
|
|
556d817cc5 | ||
|
|
458ee7cca8 | ||
|
|
bfaeee2531 | ||
|
|
b511bc37fb | ||
|
|
9d56f50967 | ||
|
|
8330a6e6d9 | ||
|
|
76933f4c37 | ||
|
|
30d7f3351b | ||
|
|
36ac6f849f | ||
|
|
02fb81901d | ||
|
|
d9a071d710 | ||
|
|
cd05a123ab | ||
|
|
52c12fa1b1 | ||
|
|
9a606246a9 | ||
|
|
d0770bcb95 | ||
|
|
6b13a84d2f | ||
|
|
5c7487c13b | ||
|
|
283ac1578f | ||
|
|
f3309e3dd4 | ||
|
|
545dbbf0df | ||
|
|
b65d518a97 | ||
|
|
9debfd94ec | ||
|
|
20ea40133b | ||
|
|
b480bff3fd | ||
|
|
cd19bf156c | ||
|
|
6ce1415cd4 | ||
|
|
9ff35a18f2 | ||
|
|
1e453140d9 | ||
|
|
abe887f557 | ||
|
|
c988f54243 | ||
|
|
485827db84 | ||
|
|
6a3a3669d2 | ||
|
|
c7ca2e2573 | ||
|
|
b4daae9b23 | ||
|
|
3aa18ebb12 | ||
|
|
5c3af6f549 | ||
|
|
363057cf49 | ||
|
|
d1b457b066 | ||
|
|
519b1b7e37 | ||
|
|
a1624013f8 | ||
|
|
95e3c6f8a4 | ||
|
|
05a4737e84 | ||
|
|
4f03e74b99 | ||
|
|
61863a69fe | ||
|
|
2990b33dc6 | ||
|
|
d9d44aee2b | ||
|
|
c24e451c12 | ||
|
|
181e2b4132 | ||
|
|
e6973b55d4 | ||
|
|
962d14746e | ||
|
|
a45858dacd | ||
|
|
68e8039ac7 | ||
|
|
45affa3043 | ||
|
|
a8402b228c | ||
|
|
b3544f644a | ||
|
|
7f5617bc74 | ||
|
|
14fdb9ebee | ||
|
|
6809af536c | ||
|
|
4c7a4d3688 | ||
|
|
05f33df098 | ||
|
|
bd388f727c | ||
|
|
9a16a359a8 | ||
|
|
fc0dce429b | ||
|
|
834ca016ec | ||
|
|
c0fc7e9ca4 | ||
|
|
eada3daf9f | ||
|
|
6ea10aa7e3 | ||
|
|
7e35987e1b | ||
|
|
c2467de9c2 | ||
|
|
872dd679e2 | ||
|
|
f02fd88eaf | ||
|
|
964d531582 | ||
|
|
385e034a23 | ||
|
|
7a51520074 | ||
|
|
4e23fe7c3a | ||
|
|
3029b19be6 | ||
|
|
15e472db12 | ||
|
|
2579d2535d | ||
|
|
fa5ac04cd3 | ||
|
|
c9f990bb72 | ||
|
|
7225c0d45b | ||
|
|
54ee8e59f6 | ||
|
|
d2cddc734b | ||
|
|
11dc477dde | ||
|
|
e593c8e6b1 | ||
|
|
fa95012fa3 | ||
|
|
1413478a68 | ||
|
|
003535b3ab | ||
|
|
383fa4d0ea | ||
|
|
604dac88e3 | ||
|
|
70b5c631c6 | ||
|
|
9726e599e4 | ||
|
|
1b9297fa31 | ||
|
|
02b6a7893a | ||
|
|
286d14f614 | ||
|
|
11c83079f2 | ||
|
|
8de978fbcf | ||
|
|
d5d686b701 | ||
|
|
f2b0068b32 | ||
|
|
db157da3fb | ||
|
|
0580773331 | ||
|
|
d69054804e | ||
|
|
73dea4fc4e | ||
|
|
f9f1cf63cf | ||
|
|
5281c8c376 | ||
|
|
535529923c | ||
|
|
a17ecefd20 | ||
|
|
c7e731f4c4 | ||
|
|
b2625a1bf0 | ||
|
|
91103fb09e | ||
|
|
121fb88008 | ||
|
|
aa6137b9c3 | ||
|
|
c18de5cdd2 | ||
|
|
ef35b83806 | ||
|
|
263f479b20 | ||
|
|
39def60f9b | ||
|
|
420aa5e102 | ||
|
|
8294aec5e7 | ||
|
|
8fdc03eaad | ||
|
|
daebc322eb | ||
|
|
7823416410 | ||
|
|
af4cbfb20d | ||
|
|
d2735c8558 | ||
|
|
3f12d363f7 | ||
|
|
e93b2b6aa1 | ||
|
|
41ae8b61a7 | ||
|
|
220c82a8f2 | ||
|
|
76c16c0383 | ||
|
|
166f353aaa | ||
|
|
8be9e6d413 | ||
|
|
9363741231 | ||
|
|
2e1a098cfa | ||
|
|
db979d7a20 | ||
|
|
f3ea8d1cff | ||
|
|
74630b3a79 | ||
|
|
c56b9aafff | ||
|
|
dcba272dc5 | ||
|
|
5f8781c88e | ||
|
|
467fb1ab4a | ||
|
|
93f414892b | ||
|
|
e0436d73c3 | ||
|
|
c95f151bfc | ||
|
|
69ed00fc14 | ||
|
|
642136f6f8 | ||
|
|
b60ed95d20 | ||
|
|
1ae39d638a | ||
|
|
f0b104fef0 | ||
|
|
d77bd638c4 | ||
|
|
6ae5b09a01 | ||
|
|
52285239e9 | ||
|
|
19297e2d22 | ||
|
|
0f66077bf5 | ||
|
|
b6ee472276 | ||
|
|
cd41df5677 | ||
|
|
a1e54fda23 | ||
|
|
11c9b74faf | ||
|
|
a12907512f | ||
|
|
3272ca34ee | ||
|
|
4440260f8f | ||
|
|
1004fb2822 | ||
|
|
72bb74cf46 | ||
|
|
fa2f03aeca | ||
|
|
2e4198b8f1 | ||
|
|
f3d485bd58 | ||
|
|
719290cd2b | ||
|
|
97633fe01e | ||
|
|
6452596312 | ||
|
|
9e1789dc58 | ||
|
|
39b679705b | ||
|
|
595ff1f4b1 | ||
|
|
a6e498bb5d | ||
|
|
b89b960f86 | ||
|
|
608943255b | ||
|
|
ec0624918f | ||
|
|
e5cc45a95b | ||
|
|
70657251b9 | ||
|
|
44175188c4 | ||
|
|
06f66337fb | ||
|
|
0a38a783c7 | ||
|
|
8e0e2a04be | ||
|
|
37d7756271 | ||
|
|
9a8fa35d8d | ||
|
|
4125a087b5 | ||
|
|
783481e644 | ||
|
|
df4b555717 | ||
|
|
b7dcc29638 | ||
|
|
cdfaa941b1 | ||
|
|
04c83dbdcc | ||
|
|
dfc7c7aa7f | ||
|
|
0e9fdc9a09 | ||
|
|
e09328c74d | ||
|
|
38874345b7 | ||
|
|
e769ebe668 | ||
|
|
dd135b875b | ||
|
|
268ecd5157 | ||
|
|
f21b313848 | ||
|
|
ac2cc8cae6 | ||
|
|
5f3f4ef74e | ||
|
|
d492339841 | ||
|
|
7bfc36ff56 | ||
|
|
209edf182f | ||
|
|
80d04e2de5 | ||
|
|
9440f8f8cd | ||
|
|
84b7a2c92d | ||
|
|
8e84e47578 | ||
|
|
fd70ba5647 | ||
|
|
e0975b85df | ||
|
|
f83dd956eb | ||
|
|
fcc42883ab | ||
|
|
d43e8beb60 | ||
|
|
56d16d1792 | ||
|
|
7c7be2e0c1 | ||
|
|
6353ed57a9 | ||
|
|
1fe82ee452 | ||
|
|
c44068db52 | ||
|
|
a7bc05aeb6 | ||
|
|
a7d028e29b | ||
|
|
ec309333be | ||
|
|
de0da80040 | ||
|
|
b91d39a0d3 | ||
|
|
c38ca146c7 | ||
|
|
0a1b31e6bc | ||
|
|
fb1095fc28 | ||
|
|
de8c1ece14 | ||
|
|
e97bfc139b | ||
|
|
0ede4abe18 | ||
|
|
0bb0424998 | ||
|
|
e93398b647 | ||
|
|
61aaff025b | ||
|
|
b12e3562d5 | ||
|
|
adfb89a2ad | ||
|
|
28f87cc776 | ||
|
|
a992638ef3 | ||
|
|
41d806f67f | ||
|
|
433769eb36 | ||
|
|
121de11400 | ||
|
|
ca87bc1577 | ||
|
|
9b481b23f3 | ||
|
|
50b264ac7d | ||
|
|
4d4dc344a6 | ||
|
|
2c555687e7 | ||
|
|
189eaf2bea | ||
|
|
fbd478812e | ||
|
|
1b268c94c0 | ||
|
|
cbedc762fd | ||
|
|
0fba1e37a7 | ||
|
|
5be1c17aa7 | ||
|
|
bce96d04c7 | ||
|
|
4c8287251a | ||
|
|
50a06f9369 | ||
|
|
f19bc2e2be | ||
|
|
20314991a4 | ||
|
|
a4533703d4 | ||
|
|
c5ba327d8f | ||
|
|
b12476c422 | ||
|
|
1bcdae41b8 | ||
|
|
9e77960ee1 | ||
|
|
25c7dfbc12 |
@@ -1,4 +1,8 @@
|
||||
root = true
|
||||
|
||||
[*.js, *.css, *.tpl]
|
||||
[{*.js, *.css, *.tpl, *.json}]
|
||||
indent_style = tab
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = false
|
||||
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -17,9 +17,7 @@ provision.sh
|
||||
.DS_Store
|
||||
feeds/recent.rss
|
||||
|
||||
# winston?
|
||||
error.log
|
||||
events.log
|
||||
logs/
|
||||
|
||||
pidfile
|
||||
|
||||
|
||||
20
.travis.yml
20
.travis.yml
@@ -1,12 +1,18 @@
|
||||
services:
|
||||
- redis-server
|
||||
- redis-server
|
||||
before_install:
|
||||
- npm i --production
|
||||
- node app --setup="{\"base_url\":\"http://127.0.0.1\",\"port\":4567,\"use_port\":false,\"secret\":\"abcdef\",\"bind_address\":\"0.0.0.0\",\"database\":\"redis\",\"redis:host\":\"127.0.0.1\",\"redis:port\":6379,\"redis:password\":\"\",\"redis:database\":0,\"admin:username\":\"admin\",\"admin:email\":\"test@example.org\",\"admin:password\":\"abcdef\",\"admin:password:confirm\":\"abcdef\"}" --ci="{\"host\":\"127.0.0.1\",\"port\":6379,\"database\":0}"
|
||||
- "sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10"
|
||||
- "echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list"
|
||||
- "sudo apt-get update"
|
||||
- "sudo apt-get install mongodb-org-server"
|
||||
- npm i --production
|
||||
- node app --setup="{\"url\":\"http://127.0.0.1:4567/\",\"secret\":\"abcdef\",\"database\":\"mongo\",\"mongo:host\":\"127.0.0.1\",\"mongo:port\":27017,\"mongo:username\":\"\",\"mongo:password\":\"\",\"mongo:database\":0,\"redis:host\":\"127.0.0.1\",\"redis:port\":6379,\"redis:password\":\"\",\"redis:database\":0,\"admin:username\":\"admin\",\"admin:email\":\"test@example.org\",\"admin:password\":\"abcdef\",\"admin:password:confirm\":\"abcdef\"}" --ci="{\"host\":\"127.0.0.1\",\"port\":27017,\"database\":0}"
|
||||
before_script:
|
||||
- "until nc -z localhost 27017; do echo Waiting for MongoDB; sleep 1; done"
|
||||
language: node_js
|
||||
node_js:
|
||||
- "0.11"
|
||||
- "0.10"
|
||||
- "0.11"
|
||||
- "0.10"
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
only:
|
||||
- master
|
||||
60
.tx/config
60
.tx/config
@@ -6,8 +6,10 @@ file_filter = public/language/<lang>/category.json
|
||||
source_file = public/language/en_GB/category.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/category.json
|
||||
trans.bn = public/language/bn/category.json
|
||||
trans.cs = public/language/cs/category.json
|
||||
trans.de = public/language/de/category.json
|
||||
trans.el = public/language/el/category.json
|
||||
trans.en_US = public/language/en_US/category.json
|
||||
trans.en@pirate = public/language/en@pirate/category.json
|
||||
trans.es = public/language/es/category.json
|
||||
@@ -17,6 +19,7 @@ trans.fi = public/language/fi/category.json
|
||||
trans.fr = public/language/fr/category.json
|
||||
trans.he = public/language/he/category.json
|
||||
trans.hu = public/language/hu/category.json
|
||||
trans.id = public/language/id/category.json
|
||||
trans.it = public/language/it/category.json
|
||||
trans.ja = public/language/ja/category.json
|
||||
trans.ko = public/language/ko/category.json
|
||||
@@ -43,8 +46,10 @@ file_filter = public/language/<lang>/login.json
|
||||
source_file = public/language/en_GB/login.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/login.json
|
||||
trans.bn = public/language/bn/login.json
|
||||
trans.cs = public/language/cs/login.json
|
||||
trans.de = public/language/de/login.json
|
||||
trans.el = public/language/el/login.json
|
||||
trans.en_US = public/language/en_US/login.json
|
||||
trans.en@pirate = public/language/en@pirate/login.json
|
||||
trans.es = public/language/es/login.json
|
||||
@@ -54,6 +59,7 @@ trans.fi = public/language/fi/login.json
|
||||
trans.fr = public/language/fr/login.json
|
||||
trans.he = public/language/he/login.json
|
||||
trans.hu = public/language/hu/login.json
|
||||
trans.id = public/language/id/login.json
|
||||
trans.it = public/language/it/login.json
|
||||
trans.ja = public/language/ja/login.json
|
||||
trans.ko = public/language/ko/login.json
|
||||
@@ -79,8 +85,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/recent.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/recent.json
|
||||
trans.bn = public/language/bn/recent.json
|
||||
trans.cs = public/language/cs/recent.json
|
||||
trans.de = public/language/de/recent.json
|
||||
trans.el = public/language/el/recent.json
|
||||
trans.en_US = public/language/en_US/recent.json
|
||||
trans.en@pirate = public/language/en@pirate/recent.json
|
||||
trans.es = public/language/es/recent.json
|
||||
@@ -90,6 +98,7 @@ trans.fi = public/language/fi/recent.json
|
||||
trans.fr = public/language/fr/recent.json
|
||||
trans.he = public/language/he/recent.json
|
||||
trans.hu = public/language/hu/recent.json
|
||||
trans.id = public/language/id/recent.json
|
||||
trans.it = public/language/it/recent.json
|
||||
trans.ja = public/language/ja/recent.json
|
||||
trans.ko = public/language/ko/recent.json
|
||||
@@ -115,8 +124,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/unread.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/unread.json
|
||||
trans.bn = public/language/bn/unread.json
|
||||
trans.cs = public/language/cs/unread.json
|
||||
trans.de = public/language/de/unread.json
|
||||
trans.el = public/language/el/unread.json
|
||||
trans.en_US = public/language/en_US/unread.json
|
||||
trans.en@pirate = public/language/en@pirate/unread.json
|
||||
trans.es = public/language/es/unread.json
|
||||
@@ -126,6 +137,7 @@ trans.fi = public/language/fi/unread.json
|
||||
trans.fr = public/language/fr/unread.json
|
||||
trans.he = public/language/he/unread.json
|
||||
trans.hu = public/language/hu/unread.json
|
||||
trans.id = public/language/id/unread.json
|
||||
trans.it = public/language/it/unread.json
|
||||
trans.ja = public/language/ja/unread.json
|
||||
trans.ko = public/language/ko/unread.json
|
||||
@@ -151,8 +163,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/modules.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/modules.json
|
||||
trans.bn = public/language/bn/modules.json
|
||||
trans.cs = public/language/cs/modules.json
|
||||
trans.de = public/language/de/modules.json
|
||||
trans.el = public/language/el/modules.json
|
||||
trans.en_US = public/language/en_US/modules.json
|
||||
trans.en@pirate = public/language/en@pirate/modules.json
|
||||
trans.es = public/language/es/modules.json
|
||||
@@ -162,6 +176,7 @@ trans.fi = public/language/fi/modules.json
|
||||
trans.fr = public/language/fr/modules.json
|
||||
trans.he = public/language/he/modules.json
|
||||
trans.hu = public/language/hu/modules.json
|
||||
trans.id = public/language/id/modules.json
|
||||
trans.it = public/language/it/modules.json
|
||||
trans.ja = public/language/ja/modules.json
|
||||
trans.ko = public/language/ko/modules.json
|
||||
@@ -187,8 +202,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/register.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/register.json
|
||||
trans.bn = public/language/bn/register.json
|
||||
trans.cs = public/language/cs/register.json
|
||||
trans.de = public/language/de/register.json
|
||||
trans.el = public/language/el/register.json
|
||||
trans.en_US = public/language/en_US/register.json
|
||||
trans.en@pirate = public/language/en@pirate/register.json
|
||||
trans.es = public/language/es/register.json
|
||||
@@ -198,6 +215,7 @@ trans.fi = public/language/fi/register.json
|
||||
trans.fr = public/language/fr/register.json
|
||||
trans.he = public/language/he/register.json
|
||||
trans.hu = public/language/hu/register.json
|
||||
trans.id = public/language/id/register.json
|
||||
trans.it = public/language/it/register.json
|
||||
trans.ja = public/language/ja/register.json
|
||||
trans.ko = public/language/ko/register.json
|
||||
@@ -223,8 +241,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/user.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/user.json
|
||||
trans.bn = public/language/bn/user.json
|
||||
trans.cs = public/language/cs/user.json
|
||||
trans.de = public/language/de/user.json
|
||||
trans.el = public/language/el/user.json
|
||||
trans.en_US = public/language/en_US/user.json
|
||||
trans.en@pirate = public/language/en@pirate/user.json
|
||||
trans.es = public/language/es/user.json
|
||||
@@ -234,6 +254,7 @@ trans.fi = public/language/fi/user.json
|
||||
trans.fr = public/language/fr/user.json
|
||||
trans.he = public/language/he/user.json
|
||||
trans.hu = public/language/hu/user.json
|
||||
trans.id = public/language/id/user.json
|
||||
trans.it = public/language/it/user.json
|
||||
trans.ja = public/language/ja/user.json
|
||||
trans.ko = public/language/ko/user.json
|
||||
@@ -259,8 +280,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/global.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/global.json
|
||||
trans.bn = public/language/bn/global.json
|
||||
trans.cs = public/language/cs/global.json
|
||||
trans.de = public/language/de/global.json
|
||||
trans.el = public/language/el/global.json
|
||||
trans.en_US = public/language/en_US/global.json
|
||||
trans.en@pirate = public/language/en@pirate/global.json
|
||||
trans.es = public/language/es/global.json
|
||||
@@ -270,6 +293,7 @@ trans.fi = public/language/fi/global.json
|
||||
trans.fr = public/language/fr/global.json
|
||||
trans.he = public/language/he/global.json
|
||||
trans.hu = public/language/hu/global.json
|
||||
trans.id = public/language/id/global.json
|
||||
trans.it = public/language/it/global.json
|
||||
trans.ja = public/language/ja/global.json
|
||||
trans.ko = public/language/ko/global.json
|
||||
@@ -295,8 +319,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/notifications.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/notifications.json
|
||||
trans.bn = public/language/bn/notifications.json
|
||||
trans.cs = public/language/cs/notifications.json
|
||||
trans.de = public/language/de/notifications.json
|
||||
trans.el = public/language/el/notifications.json
|
||||
trans.en_US = public/language/en_US/notifications.json
|
||||
trans.en@pirate = public/language/en@pirate/notifications.json
|
||||
trans.es = public/language/es/notifications.json
|
||||
@@ -306,6 +332,7 @@ trans.fi = public/language/fi/notifications.json
|
||||
trans.fr = public/language/fr/notifications.json
|
||||
trans.he = public/language/he/notifications.json
|
||||
trans.hu = public/language/hu/notifications.json
|
||||
trans.id = public/language/id/notifications.json
|
||||
trans.it = public/language/it/notifications.json
|
||||
trans.ja = public/language/ja/notifications.json
|
||||
trans.ko = public/language/ko/notifications.json
|
||||
@@ -331,8 +358,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/reset_password.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/reset_password.json
|
||||
trans.bn = public/language/bn/reset_password.json
|
||||
trans.cs = public/language/cs/reset_password.json
|
||||
trans.de = public/language/de/reset_password.json
|
||||
trans.el = public/language/el/reset_password.json
|
||||
trans.en_US = public/language/en_US/reset_password.json
|
||||
trans.en@pirate = public/language/en@pirate/reset_password.json
|
||||
trans.es = public/language/es/reset_password.json
|
||||
@@ -342,6 +371,7 @@ trans.fi = public/language/fi/reset_password.json
|
||||
trans.fr = public/language/fr/reset_password.json
|
||||
trans.he = public/language/he/reset_password.json
|
||||
trans.hu = public/language/hu/reset_password.json
|
||||
trans.id = public/language/id/reset_password.json
|
||||
trans.it = public/language/it/reset_password.json
|
||||
trans.ja = public/language/ja/reset_password.json
|
||||
trans.ko = public/language/ko/reset_password.json
|
||||
@@ -367,8 +397,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/users.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/users.json
|
||||
trans.bn = public/language/bn/users.json
|
||||
trans.cs = public/language/cs/users.json
|
||||
trans.de = public/language/de/users.json
|
||||
trans.el = public/language/el/users.json
|
||||
trans.en_US = public/language/en_US/users.json
|
||||
trans.en@pirate = public/language/en@pirate/users.json
|
||||
trans.es = public/language/es/users.json
|
||||
@@ -378,6 +410,7 @@ trans.fi = public/language/fi/users.json
|
||||
trans.fr = public/language/fr/users.json
|
||||
trans.he = public/language/he/users.json
|
||||
trans.hu = public/language/hu/users.json
|
||||
trans.id = public/language/id/users.json
|
||||
trans.it = public/language/it/users.json
|
||||
trans.ja = public/language/ja/users.json
|
||||
trans.ko = public/language/ko/users.json
|
||||
@@ -403,8 +436,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/language.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/language.json
|
||||
trans.bn = public/language/bn/language.json
|
||||
trans.cs = public/language/cs/language.json
|
||||
trans.de = public/language/de/language.json
|
||||
trans.el = public/language/el/language.json
|
||||
trans.en_US = public/language/en_US/language.json
|
||||
trans.en@pirate = public/language/en@pirate/language.json
|
||||
trans.es = public/language/es/language.json
|
||||
@@ -414,6 +449,7 @@ trans.fi = public/language/fi/language.json
|
||||
trans.fr = public/language/fr/language.json
|
||||
trans.he = public/language/he/language.json
|
||||
trans.hu = public/language/hu/language.json
|
||||
trans.id = public/language/id/language.json
|
||||
trans.it = public/language/it/language.json
|
||||
trans.ja = public/language/ja/language.json
|
||||
trans.ko = public/language/ko/language.json
|
||||
@@ -439,8 +475,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/pages.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/pages.json
|
||||
trans.bn = public/language/bn/pages.json
|
||||
trans.cs = public/language/cs/pages.json
|
||||
trans.de = public/language/de/pages.json
|
||||
trans.el = public/language/el/pages.json
|
||||
trans.en_US = public/language/en_US/pages.json
|
||||
trans.en@pirate = public/language/en@pirate/pages.json
|
||||
trans.es = public/language/es/pages.json
|
||||
@@ -450,6 +488,7 @@ trans.fi = public/language/fi/pages.json
|
||||
trans.fr = public/language/fr/pages.json
|
||||
trans.he = public/language/he/pages.json
|
||||
trans.hu = public/language/hu/pages.json
|
||||
trans.id = public/language/id/pages.json
|
||||
trans.it = public/language/it/pages.json
|
||||
trans.ja = public/language/ja/pages.json
|
||||
trans.ko = public/language/ko/pages.json
|
||||
@@ -475,8 +514,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/topic.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/topic.json
|
||||
trans.bn = public/language/bn/topic.json
|
||||
trans.cs = public/language/cs/topic.json
|
||||
trans.de = public/language/de/topic.json
|
||||
trans.el = public/language/el/topic.json
|
||||
trans.en_US = public/language/en_US/topic.json
|
||||
trans.en@pirate = public/language/en@pirate/topic.json
|
||||
trans.es = public/language/es/topic.json
|
||||
@@ -486,6 +527,7 @@ trans.fi = public/language/fi/topic.json
|
||||
trans.fr = public/language/fr/topic.json
|
||||
trans.he = public/language/he/topic.json
|
||||
trans.hu = public/language/hu/topic.json
|
||||
trans.id = public/language/id/topic.json
|
||||
trans.it = public/language/it/topic.json
|
||||
trans.ja = public/language/ja/topic.json
|
||||
trans.ko = public/language/ko/topic.json
|
||||
@@ -511,8 +553,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/success.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/success.json
|
||||
trans.bn = public/language/bn/success.json
|
||||
trans.cs = public/language/cs/success.json
|
||||
trans.de = public/language/de/success.json
|
||||
trans.el = public/language/el/success.json
|
||||
trans.en_US = public/language/en_US/success.json
|
||||
trans.en@pirate = public/language/en@pirate/success.json
|
||||
trans.es = public/language/es/success.json
|
||||
@@ -522,6 +566,7 @@ trans.fi = public/language/fi/success.json
|
||||
trans.fr = public/language/fr/success.json
|
||||
trans.he = public/language/he/success.json
|
||||
trans.hu = public/language/hu/success.json
|
||||
trans.id = public/language/id/success.json
|
||||
trans.it = public/language/it/success.json
|
||||
trans.ja = public/language/ja/success.json
|
||||
trans.ko = public/language/ko/success.json
|
||||
@@ -547,8 +592,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/error.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/error.json
|
||||
trans.bn = public/language/bn/error.json
|
||||
trans.cs = public/language/cs/error.json
|
||||
trans.de = public/language/de/error.json
|
||||
trans.el = public/language/el/error.json
|
||||
trans.en_US = public/language/en_US/error.json
|
||||
trans.en@pirate = public/language/en@pirate/error.json
|
||||
trans.es = public/language/es/error.json
|
||||
@@ -558,6 +605,7 @@ trans.fi = public/language/fi/error.json
|
||||
trans.fr = public/language/fr/error.json
|
||||
trans.he = public/language/he/error.json
|
||||
trans.hu = public/language/hu/error.json
|
||||
trans.id = public/language/id/error.json
|
||||
trans.it = public/language/it/error.json
|
||||
trans.ja = public/language/ja/error.json
|
||||
trans.ko = public/language/ko/error.json
|
||||
@@ -583,8 +631,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/tags.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/tags.json
|
||||
trans.bn = public/language/bn/tags.json
|
||||
trans.cs = public/language/cs/tags.json
|
||||
trans.de = public/language/de/tags.json
|
||||
trans.el = public/language/el/tags.json
|
||||
trans.en_US = public/language/en_US/tags.json
|
||||
trans.en@pirate = public/language/en@pirate/tags.json
|
||||
trans.es = public/language/es/tags.json
|
||||
@@ -594,6 +644,7 @@ trans.fi = public/language/fi/tags.json
|
||||
trans.fr = public/language/fr/tags.json
|
||||
trans.he = public/language/he/tags.json
|
||||
trans.hu = public/language/hu/tags.json
|
||||
trans.id = public/language/id/tags.json
|
||||
trans.it = public/language/it/tags.json
|
||||
trans.ja = public/language/ja/tags.json
|
||||
trans.ko = public/language/ko/tags.json
|
||||
@@ -619,8 +670,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/email.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/email.json
|
||||
trans.bn = public/language/bn/email.json
|
||||
trans.cs = public/language/cs/email.json
|
||||
trans.de = public/language/de/email.json
|
||||
trans.el = public/language/el/email.json
|
||||
trans.en_US = public/language/en_US/email.json
|
||||
trans.en@pirate = public/language/en@pirate/email.json
|
||||
trans.es = public/language/es/email.json
|
||||
@@ -630,6 +683,7 @@ trans.fi = public/language/fi/email.json
|
||||
trans.fr = public/language/fr/email.json
|
||||
trans.he = public/language/he/email.json
|
||||
trans.hu = public/language/hu/email.json
|
||||
trans.id = public/language/id/email.json
|
||||
trans.it = public/language/it/email.json
|
||||
trans.ja = public/language/ja/email.json
|
||||
trans.ko = public/language/ko/email.json
|
||||
@@ -655,8 +709,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/search.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/search.json
|
||||
trans.bn = public/language/bn/search.json
|
||||
trans.cs = public/language/cs/search.json
|
||||
trans.de = public/language/de/search.json
|
||||
trans.el = public/language/el/search.json
|
||||
trans.en_US = public/language/en_US/search.json
|
||||
trans.en@pirate = public/language/en@pirate/search.json
|
||||
trans.es = public/language/es/search.json
|
||||
@@ -666,6 +722,7 @@ trans.fi = public/language/fi/search.json
|
||||
trans.fr = public/language/fr/search.json
|
||||
trans.he = public/language/he/search.json
|
||||
trans.hu = public/language/hu/search.json
|
||||
trans.id = public/language/id/search.json
|
||||
trans.it = public/language/it/search.json
|
||||
trans.ja = public/language/ja/search.json
|
||||
trans.ko = public/language/ko/search.json
|
||||
@@ -691,8 +748,10 @@ type = KEYVALUEJSON
|
||||
source_file = public/language/en_GB/groups.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/groups.json
|
||||
trans.bn = public/language/bn/groups.json
|
||||
trans.cs = public/language/cs/groups.json
|
||||
trans.de = public/language/de/groups.json
|
||||
trans.el = public/language/el/groups.json
|
||||
trans.en_US = public/language/en_US/groups.json
|
||||
trans.en@pirate = public/language/en@pirate/groups.json
|
||||
trans.es = public/language/es/groups.json
|
||||
@@ -702,6 +761,7 @@ trans.fi = public/language/fi/groups.json
|
||||
trans.fr = public/language/fr/groups.json
|
||||
trans.he = public/language/he/groups.json
|
||||
trans.hu = public/language/hu/groups.json
|
||||
trans.id = public/language/id/groups.json
|
||||
trans.it = public/language/it/groups.json
|
||||
trans.ja = public/language/ja/groups.json
|
||||
trans.ko = public/language/ko/groups.json
|
||||
|
||||
@@ -1,3 +1,19 @@
|
||||
# Submitting a Pull Request to NodeBB?
|
||||
|
||||
First of all, thank you! Please consider this [style guide](https://docs.nodebb.org/en/latest/contributing/style-guide.html) when submitting your changes. Also, please join our [community](https://community.nodebb.org) to meet other NodeBB developers and designers :)
|
||||
|
||||
## Contributor License Agreement
|
||||
|
||||
Thank you for considering contributing to NodeBB. **Before we can accept any pull requests, please take a moment to read and sign our [license agreement](https://www.clahub.com/agreements/NodeBB/NodeBB)**. In summary, signing this document means that 1) you own the code that you are contributing and 2) you give permission to NodeBB Inc. to license the code to others. This agreement applies to any repository under the NodeBB organization.
|
||||
|
||||
If you are writing contributions as part of employment from another company / individual, then your employer will need to sign a separate agreement. Please [contact us](mailto:accounts@nodebb.org) so that we can send this additional agreement to your employer.
|
||||
|
||||
|
||||
# Having problems installing NodeBB?
|
||||
|
||||
Chances are somebody has run into this problem before. After consulting our [documentation](https://docs.nodebb.org/en/latest/installing/os.html), please head over to our [community support forum](https://community.nodebb.org) for advice.
|
||||
|
||||
|
||||
# Issues & Bugs
|
||||
|
||||
Thanks for reporting an issue with NodeBB! Please follow these guidelines in order to streamline the debugging process. The more guidelines you follow, the easier it will be for us to reproduce your problem.
|
||||
@@ -38,4 +54,4 @@ If you have downloaded the `.zip` or `.tar.gz` packages from GitHub (or elsewher
|
||||
|
||||
If you have installed NodeBB via GitHub clone, are familiar with utilising git, and are willing to help us narrow down the specific commit that causes a bug, consider running `git bisect`.
|
||||
|
||||
A full guide can be found here: [Debugging with Git/Binary Search](http://git-scm.com/book/en/Git-Tools-Debugging-with-Git#Binary-Search)
|
||||
A full guide can be found here: [Debugging with Git/Binary Search](http://git-scm.com/book/en/Git-Tools-Debugging-with-Git#Binary-Search)
|
||||
|
||||
@@ -1,15 +1,19 @@
|
||||
# <img alt="NodeBB" src="http://i.imgur.com/mYxPPtB.png" />
|
||||
|
||||
[](https://gitter.im/NodeBB/NodeBB?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://travis-ci.org/NodeBB/NodeBB)
|
||||
[](https://david-dm.org/nodebb/nodebb)
|
||||
[](https://codeclimate.com/github/NodeBB/NodeBB)
|
||||
[](https://readthedocs.org/projects/nodebb/?badge=latest)
|
||||
|
||||
**NodeBB Forum Software** is powered by Node.js and built on a Redis database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB is compatible down to IE8 and has many modern features out of the box such as social network integration and streaming discussions.
|
||||
**NodeBB Forum Software** is powered by Node.js and built on either a Redis or MongoDB database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB is compatible down to IE8 and has many modern features out of the box such as social network integration and streaming discussions.
|
||||
|
||||
Additional functionality is enabled through the use of third-party plugins.
|
||||
|
||||
* [Get NodeBB](http://www.nodebb.org/ "NodeBB")
|
||||
* [Demo & Meta Discussion](http://community.nodebb.org)
|
||||
* [NodeBB Blog](http://blog.nodebb.org)
|
||||
* [Documentation](http://docs.nodebb.org) - includes setup instructions for other platforms
|
||||
* [Documentation & Installation Instructions](http://docs.nodebb.org)
|
||||
* [Join us on IRC](https://kiwiirc.com/client/irc.freenode.net/nodebb) - #nodebb on Freenode
|
||||
* [Follow us on Twitter](http://www.twitter.com/NodeBB/ "NodeBB Twitter")
|
||||
* [Like us on Facebook](http://www.facebook.com/NodeBB/ "NodeBB Facebook")
|
||||
|
||||
116
app.js
116
app.js
@@ -25,10 +25,11 @@ nconf.argv().env();
|
||||
|
||||
var fs = require('fs'),
|
||||
os = require('os'),
|
||||
url = require('url'),
|
||||
async = require('async'),
|
||||
semver = require('semver'),
|
||||
winston = require('winston'),
|
||||
path = require('path'),
|
||||
cluster = require('cluster'),
|
||||
pkg = require('./package.json'),
|
||||
utils = require('./public/src/utils.js');
|
||||
|
||||
@@ -38,19 +39,13 @@ global.env = process.env.NODE_ENV || 'production';
|
||||
winston.remove(winston.transports.Console);
|
||||
winston.add(winston.transports.Console, {
|
||||
colorize: true,
|
||||
timestamp: true
|
||||
timestamp: function() {
|
||||
var date = new Date();
|
||||
return date.getDate() + '/' + (date.getMonth() + 1) + ' ' + date.toTimeString().substr(0,5) + ' [' + global.process.pid + ']';
|
||||
},
|
||||
level: global.env === 'production' ? 'info' : 'verbose'
|
||||
});
|
||||
|
||||
winston.add(winston.transports.File, {
|
||||
filename: 'logs/error.log',
|
||||
level: 'error'
|
||||
});
|
||||
|
||||
// TODO: remove once https://github.com/flatiron/winston/issues/280 is fixed
|
||||
winston.err = function (err) {
|
||||
winston.error(err.stack);
|
||||
};
|
||||
|
||||
if(os.platform() === 'linux') {
|
||||
require('child_process').exec('/usr/bin/which convert', function(err, stdout, stderr) {
|
||||
if(err || !stdout) {
|
||||
@@ -59,7 +54,7 @@ if(os.platform() === 'linux') {
|
||||
});
|
||||
}
|
||||
|
||||
if (!cluster.isWorker) {
|
||||
if (!process.send) {
|
||||
// If run using `node app`, log GNU copyright info along with server info
|
||||
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
|
||||
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
|
||||
@@ -94,10 +89,14 @@ function loadConfig() {
|
||||
nconf.defaults({
|
||||
base_dir: __dirname,
|
||||
themes_path: path.join(__dirname, 'node_modules'),
|
||||
upload_url: '/uploads/',
|
||||
views_dir: path.join(__dirname, 'public/templates')
|
||||
});
|
||||
|
||||
if (!nconf.get('isCluster')) {
|
||||
nconf.set('isPrimary', 'true');
|
||||
nconf.set('isCluster', 'false');
|
||||
}
|
||||
|
||||
// Ensure themes_path is a full filepath
|
||||
nconf.set('themes_path', path.resolve(__dirname, nconf.get('themes_path')));
|
||||
nconf.set('core_templates_path', path.join(__dirname, 'src/views'));
|
||||
@@ -107,20 +106,33 @@ function loadConfig() {
|
||||
function start() {
|
||||
loadConfig();
|
||||
|
||||
if (!cluster.isWorker || process.env.cluster_setup === 'true') {
|
||||
winston.info('Time: ' + new Date());
|
||||
winston.info('Initializing NodeBB v' + pkg.version);
|
||||
winston.info('* using configuration stored in: ' + configFile);
|
||||
// nconf defaults, if not set in config
|
||||
if (!nconf.get('upload_path')) {
|
||||
nconf.set('upload_path', '/public/uploads');
|
||||
}
|
||||
// Parse out the relative_url and other goodies from the configured URL
|
||||
var urlObject = url.parse(nconf.get('url'));
|
||||
var relativePath = urlObject.pathname !== '/' ? urlObject.pathname : '';
|
||||
nconf.set('use_port', !!urlObject.port);
|
||||
nconf.set('relative_path', relativePath);
|
||||
nconf.set('port', urlObject.port || nconf.get('port') || nconf.get('PORT') || 4567);
|
||||
nconf.set('upload_url', relativePath + '/uploads/');
|
||||
|
||||
if (nconf.get('isPrimary') === 'true') {
|
||||
winston.info('Time: %s', (new Date()).toString());
|
||||
winston.info('Initializing NodeBB v%s', pkg.version);
|
||||
winston.verbose('* using configuration stored in: %s', configFile);
|
||||
|
||||
if (cluster.isWorker && process.env.cluster_setup === 'true') {
|
||||
var host = nconf.get(nconf.get('database') + ':host'),
|
||||
storeLocation = host ? 'at ' + host + (host.indexOf('/') === -1 ? ':' + nconf.get(nconf.get('database') + ':port') : '') : '';
|
||||
|
||||
winston.info('* using ' + nconf.get('database') +' store ' + storeLocation);
|
||||
winston.info('* using themes stored in: ' + nconf.get('themes_path'));
|
||||
winston.verbose('* using %s store %s', nconf.get('database'), storeLocation);
|
||||
winston.verbose('* using themes stored in: %s', nconf.get('themes_path'));
|
||||
}
|
||||
|
||||
|
||||
var webserver = require('./src/webserver');
|
||||
|
||||
require('./src/database').init(function(err) {
|
||||
if (err) {
|
||||
winston.error(err.stack);
|
||||
@@ -129,7 +141,6 @@ function start() {
|
||||
var meta = require('./src/meta');
|
||||
meta.configs.init(function () {
|
||||
var templates = require('templates.js'),
|
||||
webserver = require('./src/webserver'),
|
||||
sockets = require('./src/socket.io'),
|
||||
plugins = require('./src/plugins'),
|
||||
upgrade = require('./src/upgrade');
|
||||
@@ -138,18 +149,30 @@ function start() {
|
||||
|
||||
upgrade.check(function(schema_ok) {
|
||||
if (schema_ok || nconf.get('check-schema') === false) {
|
||||
webserver.init();
|
||||
sockets.init(webserver.server);
|
||||
|
||||
nconf.set('url', nconf.get('base_url') + (nconf.get('use_port') ? ':' + nconf.get('port') : '') + nconf.get('relative_path'));
|
||||
if (nconf.get('isPrimary') === 'true' && !nconf.get('jobsDisabled')) {
|
||||
require('./src/notifications').init();
|
||||
require('./src/user').startJobs();
|
||||
}
|
||||
|
||||
plugins.ready(function() {
|
||||
webserver.init(function() {
|
||||
webserver.listen(function() {
|
||||
process.send({
|
||||
action: 'ready'
|
||||
});
|
||||
async.waterfall([
|
||||
async.apply(meta.themes.setupPaths),
|
||||
async.apply(plugins.ready),
|
||||
async.apply(meta.templates.compile),
|
||||
async.apply(webserver.listen)
|
||||
], function(err) {
|
||||
if (err) {
|
||||
winston.error(err.stack);
|
||||
process.exit();
|
||||
}
|
||||
|
||||
if (process.send) {
|
||||
process.send({
|
||||
action: 'ready'
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
process.on('SIGTERM', shutdown);
|
||||
@@ -163,12 +186,14 @@ function start() {
|
||||
case 'js-propagate':
|
||||
meta.js.cache = message.cache;
|
||||
meta.js.map = message.map;
|
||||
winston.info('[cluster] Client-side javascript and mapping propagated to worker ' + cluster.worker.id);
|
||||
meta.js.hash = message.hash;
|
||||
winston.verbose('[cluster] Client-side javascript and mapping propagated to worker %s', process.pid);
|
||||
break;
|
||||
case 'css-propagate':
|
||||
meta.css.cache = message.cache;
|
||||
meta.css.acpCache = message.acpCache;
|
||||
winston.info('[cluster] Stylesheets propagated to worker ' + cluster.worker.id);
|
||||
meta.css.hash = message.hash;
|
||||
winston.verbose('[cluster] Stylesheets propagated to worker %s', process.pid);
|
||||
break;
|
||||
}
|
||||
});
|
||||
@@ -183,11 +208,7 @@ function start() {
|
||||
} else {
|
||||
winston.warn('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
|
||||
winston.warn(' ./nodebb upgrade');
|
||||
if (cluster.isWorker) {
|
||||
cluster.worker.kill();
|
||||
} else {
|
||||
process.exit();
|
||||
}
|
||||
process.exit();
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -243,7 +264,7 @@ function reset() {
|
||||
process.exit();
|
||||
}
|
||||
|
||||
if (nconf.get('themes')) {
|
||||
if (nconf.get('theme')) {
|
||||
resetThemes();
|
||||
} else if (nconf.get('plugin')) {
|
||||
resetPlugin(nconf.get('plugin'));
|
||||
@@ -258,12 +279,16 @@ function reset() {
|
||||
if (!err) {
|
||||
winston.info('[reset] Reset complete.');
|
||||
} else {
|
||||
winston.error('[reset] Errors were encountered while resetting your forum settings: ' + err.message);
|
||||
winston.error('[reset] Errors were encountered while resetting your forum settings: %s', err.message);
|
||||
}
|
||||
process.exit();
|
||||
});
|
||||
} else {
|
||||
winston.warn('[reset] Nothing reset.');
|
||||
winston.info('Use ./nodebb reset {theme|plugins|widgets|settings|all}');
|
||||
winston.info(' or');
|
||||
winston.info('Use ./nodebb reset plugin="nodebb-plugin-pluginName"');
|
||||
process.exit();
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -298,16 +323,11 @@ function resetThemes(callback) {
|
||||
|
||||
function resetPlugin(pluginId) {
|
||||
var db = require('./src/database');
|
||||
db.setRemove('plugins:active', pluginId, function(err, result) {
|
||||
if (err || result !== 1) {
|
||||
winston.error('[reset] Could not disable plugin: ' + pluginId);
|
||||
if (err) {
|
||||
winston.error('[reset] Encountered error: ' + err.message);
|
||||
} else {
|
||||
winston.info('[reset] Perhaps it has already been disabled?');
|
||||
}
|
||||
db.setRemove('plugins:active', pluginId, function(err) {
|
||||
if (err) {
|
||||
winston.error('[reset] Could not disable plugin: %s encountered error %s', pluginId, err.message);
|
||||
} else {
|
||||
winston.info('[reset] Plugin `' + pluginId + '` disabled');
|
||||
winston.info('[reset] Plugin `%s` disabled', pluginId);
|
||||
}
|
||||
|
||||
process.exit();
|
||||
|
||||
58
bcrypt.js
58
bcrypt.js
@@ -2,28 +2,42 @@
|
||||
'use strict';
|
||||
|
||||
var bcrypt = require('bcryptjs'),
|
||||
async = require('async'),
|
||||
action = process.argv[2];
|
||||
async = require('async');
|
||||
|
||||
switch(action) {
|
||||
case 'compare':
|
||||
bcrypt.compare(process.argv[3], process.argv[4], function(err, res) {
|
||||
process.stdout.write(res ? 'true' : 'false');
|
||||
});
|
||||
break;
|
||||
|
||||
case 'hash':
|
||||
async.waterfall([
|
||||
async.apply(bcrypt.genSalt, parseInt(process.argv[3], 10)),
|
||||
function(salt, next) {
|
||||
bcrypt.hash(process.argv[4], salt, next);
|
||||
}
|
||||
], function(err, hash) {
|
||||
if (!err) {
|
||||
process.stdout.write(hash);
|
||||
} else {
|
||||
process.stderr.write(err.message);
|
||||
}
|
||||
});
|
||||
break;
|
||||
process.on('message', function(msg) {
|
||||
if (msg.type === 'hash') {
|
||||
hashPassword(msg.password, msg.rounds);
|
||||
} else if (msg.type === 'compare') {
|
||||
compare(msg.password, msg.hash);
|
||||
}
|
||||
});
|
||||
|
||||
function hashPassword(password, rounds) {
|
||||
async.waterfall([
|
||||
function(next) {
|
||||
bcrypt.genSalt(parseInt(rounds, 10), next);
|
||||
},
|
||||
function(salt, next) {
|
||||
bcrypt.hash(password, salt, next);
|
||||
}
|
||||
], function(err, hash) {
|
||||
if (err) {
|
||||
process.send({err: err.message});
|
||||
return process.disconnect();
|
||||
}
|
||||
process.send({result: hash});
|
||||
process.disconnect();
|
||||
});
|
||||
}
|
||||
|
||||
function compare(password, hash) {
|
||||
bcrypt.compare(password, hash, function(err, res) {
|
||||
if (err) {
|
||||
process.send({err: err.message});
|
||||
return process.disconnect();
|
||||
}
|
||||
process.send({result: res});
|
||||
process.disconnect();
|
||||
});
|
||||
}
|
||||
@@ -15,10 +15,22 @@
|
||||
"field": "initialPostDelay",
|
||||
"value": 10
|
||||
},
|
||||
{
|
||||
"field": "newbiePostDelay",
|
||||
"value": 120
|
||||
},
|
||||
{
|
||||
"field": "newbiePostDelayThreshold",
|
||||
"value": 3
|
||||
},
|
||||
{
|
||||
"field": "minimumPostLength",
|
||||
"value": 8
|
||||
},
|
||||
{
|
||||
"field": "maximumPostLength",
|
||||
"value": 32767
|
||||
},
|
||||
{
|
||||
"field": "allowGuestSearching",
|
||||
"value": 0
|
||||
|
||||
295
loader.js
295
loader.js
@@ -1,9 +1,11 @@
|
||||
"use strict";
|
||||
'use strict';
|
||||
|
||||
var nconf = require('nconf'),
|
||||
fs = require('fs'),
|
||||
url = require('url'),
|
||||
path = require('path'),
|
||||
cluster = require('cluster'),
|
||||
fork = require('child_process').fork,
|
||||
|
||||
async = require('async'),
|
||||
logrotate = require('logrotate-stream'),
|
||||
|
||||
@@ -11,12 +13,12 @@ var nconf = require('nconf'),
|
||||
|
||||
pidFilePath = __dirname + '/pidfile',
|
||||
output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true }),
|
||||
silent = process.env.NODE_ENV !== 'development' ? true : false,
|
||||
silent = process.env.NODE_ENV !== 'development',
|
||||
numProcs,
|
||||
workers = [],
|
||||
|
||||
Loader = {
|
||||
timesStarted: 0,
|
||||
shutdown_queue: [],
|
||||
js: {
|
||||
cache: undefined,
|
||||
map: undefined
|
||||
@@ -28,12 +30,6 @@ var nconf = require('nconf'),
|
||||
};
|
||||
|
||||
Loader.init = function(callback) {
|
||||
cluster.setupMaster({
|
||||
exec: "app.js",
|
||||
silent: silent
|
||||
});
|
||||
Loader.primaryWorker = 1;
|
||||
|
||||
if (silent) {
|
||||
console.log = function(value) {
|
||||
output.write(value + '\n');
|
||||
@@ -41,6 +37,8 @@ Loader.init = function(callback) {
|
||||
}
|
||||
|
||||
process.on('SIGHUP', Loader.restart);
|
||||
process.on('SIGUSR2', Loader.reload);
|
||||
process.on('SIGTERM', Loader.stop);
|
||||
callback();
|
||||
};
|
||||
|
||||
@@ -54,98 +52,9 @@ Loader.displayStartupMessages = function(callback) {
|
||||
callback();
|
||||
};
|
||||
|
||||
Loader.addClusterEvents = function(callback) {
|
||||
cluster.on('fork', function(worker) {
|
||||
worker.on('message', function(message) {
|
||||
if (message && typeof message === 'object' && message.action) {
|
||||
var otherWorkers;
|
||||
Loader.addWorkerEvents = function(worker) {
|
||||
|
||||
switch (message.action) {
|
||||
case 'ready':
|
||||
if (Loader.js.cache) {
|
||||
worker.send({
|
||||
action: 'js-propagate',
|
||||
cache: Loader.js.cache,
|
||||
map: Loader.js.map
|
||||
});
|
||||
}
|
||||
|
||||
if (Loader.css.cache) {
|
||||
worker.send({
|
||||
action: 'css-propagate',
|
||||
cache: Loader.css.cache,
|
||||
acpCache: Loader.css.acpCache
|
||||
});
|
||||
}
|
||||
|
||||
// Kill an instance in the shutdown queue
|
||||
var workerToKill = Loader.shutdown_queue.pop();
|
||||
if (workerToKill) {
|
||||
cluster.workers[workerToKill].kill();
|
||||
}
|
||||
break;
|
||||
case 'restart':
|
||||
console.log('[cluster] Restarting...');
|
||||
Loader.restart(function(err) {
|
||||
console.log('[cluster] Restarting...');
|
||||
});
|
||||
break;
|
||||
case 'reload':
|
||||
console.log('[cluster] Reloading...');
|
||||
Loader.reload();
|
||||
break;
|
||||
case 'js-propagate':
|
||||
Loader.js.cache = message.cache;
|
||||
Loader.js.map = message.map;
|
||||
|
||||
otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
|
||||
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
|
||||
});
|
||||
|
||||
otherWorkers.forEach(function(worker_id) {
|
||||
cluster.workers[worker_id].send({
|
||||
action: 'js-propagate',
|
||||
cache: message.cache,
|
||||
map: message.map
|
||||
});
|
||||
});
|
||||
break;
|
||||
case 'css-propagate':
|
||||
Loader.css.cache = message.cache;
|
||||
Loader.css.acpCache = message.acpCache;
|
||||
|
||||
otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
|
||||
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
|
||||
});
|
||||
|
||||
otherWorkers.forEach(function(worker_id) {
|
||||
cluster.workers[worker_id].send({
|
||||
action: 'css-propagate',
|
||||
cache: message.cache,
|
||||
acpCache: message.acpCache
|
||||
});
|
||||
});
|
||||
break;
|
||||
case 'listening':
|
||||
if (message.primary) {
|
||||
Loader.primaryWorker = parseInt(worker.id, 10);
|
||||
}
|
||||
break;
|
||||
case 'user:connect':
|
||||
case 'user:disconnect':
|
||||
case 'config:update':
|
||||
Loader.notifyWorkers(message);
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
cluster.on('listening', function(worker) {
|
||||
console.log('[cluster] Child Process (' + worker.process.pid + ') listening for connections.');
|
||||
});
|
||||
|
||||
cluster.on('exit', function(worker, code, signal) {
|
||||
worker.on('exit', function(code, signal) {
|
||||
if (code !== 0) {
|
||||
if (Loader.timesStarted < numProcs*3) {
|
||||
Loader.timesStarted++;
|
||||
@@ -154,81 +63,177 @@ Loader.addClusterEvents = function(callback) {
|
||||
}
|
||||
Loader.crashTimer = setTimeout(function() {
|
||||
Loader.timesStarted = 0;
|
||||
});
|
||||
}, 10000);
|
||||
} else {
|
||||
console.log(numProcs*3 + ' restarts in 10 seconds, most likely an error on startup. Halting.');
|
||||
process.exit();
|
||||
}
|
||||
}
|
||||
|
||||
console.log('[cluster] Child Process (' + worker.process.pid + ') has exited (code: ' + code + ')');
|
||||
if (!worker.suicide) {
|
||||
console.log('[cluster] Child Process (' + worker.pid + ') has exited (code: ' + code + ', signal: ' + signal +')');
|
||||
if (!(worker.suicide || code === 0)) {
|
||||
console.log('[cluster] Spinning up another process...');
|
||||
|
||||
var wasPrimary = parseInt(worker.id, 10) === Loader.primaryWorker;
|
||||
cluster.fork({
|
||||
handle_jobs: wasPrimary
|
||||
});
|
||||
forkWorker(worker.index, worker.isPrimary);
|
||||
}
|
||||
});
|
||||
|
||||
cluster.on('disconnect', function(worker) {
|
||||
console.log('[cluster] Child Process (' + worker.process.pid + ') has disconnected');
|
||||
});
|
||||
worker.on('message', function(message) {
|
||||
if (message && typeof message === 'object' && message.action) {
|
||||
switch (message.action) {
|
||||
case 'ready':
|
||||
if (Loader.js.cache) {
|
||||
worker.send({
|
||||
action: 'js-propagate',
|
||||
cache: Loader.js.cache,
|
||||
map: Loader.js.map,
|
||||
hash: Loader.js.hash
|
||||
});
|
||||
}
|
||||
|
||||
callback();
|
||||
}
|
||||
if (Loader.css.cache) {
|
||||
worker.send({
|
||||
action: 'css-propagate',
|
||||
cache: Loader.css.cache,
|
||||
acpCache: Loader.css.acpCache,
|
||||
hash: Loader.css.hash
|
||||
});
|
||||
}
|
||||
break;
|
||||
case 'restart':
|
||||
console.log('[cluster] Restarting...');
|
||||
Loader.restart();
|
||||
break;
|
||||
case 'reload':
|
||||
console.log('[cluster] Reloading...');
|
||||
Loader.reload();
|
||||
break;
|
||||
case 'js-propagate':
|
||||
Loader.js.cache = message.cache;
|
||||
Loader.js.map = message.map;
|
||||
Loader.js.hash = message.hash;
|
||||
|
||||
Loader.start = function(callback) {
|
||||
var output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true }),
|
||||
worker;
|
||||
Loader.notifyWorkers({
|
||||
action: 'js-propagate',
|
||||
cache: message.cache,
|
||||
map: message.map,
|
||||
hash: message.hash
|
||||
}, worker.pid);
|
||||
break;
|
||||
case 'css-propagate':
|
||||
Loader.css.cache = message.cache;
|
||||
Loader.css.acpCache = message.acpCache;
|
||||
Loader.css.hash = message.hash;
|
||||
|
||||
console.log('Clustering enabled: Spinning up ' + numProcs + ' process(es).\n');
|
||||
|
||||
for(var x=0;x<numProcs;x++) {
|
||||
// Only the first worker sets up templates/sounds/jobs/etc
|
||||
worker = cluster.fork({
|
||||
cluster_setup: x === 0,
|
||||
handle_jobs: x === 0
|
||||
});
|
||||
|
||||
// Logging
|
||||
if (silent) {
|
||||
worker.process.stdout.pipe(output);
|
||||
Loader.notifyWorkers({
|
||||
action: 'css-propagate',
|
||||
cache: message.cache,
|
||||
acpCache: message.acpCache,
|
||||
hash: message.hash
|
||||
}, worker.pid);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (callback) callback();
|
||||
});
|
||||
};
|
||||
|
||||
Loader.restart = function(callback) {
|
||||
// Slate existing workers for termination -- welcome to death row.
|
||||
Loader.shutdown_queue = Loader.shutdown_queue.concat(Object.keys(cluster.workers));
|
||||
Loader.start = function(callback) {
|
||||
numProcs = getPorts().length;
|
||||
console.log('Clustering enabled: Spinning up ' + numProcs + ' process(es).\n');
|
||||
|
||||
for (var x=0; x<numProcs; ++x) {
|
||||
forkWorker(x, x === 0);
|
||||
}
|
||||
|
||||
if (callback) {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
|
||||
function forkWorker(index, isPrimary) {
|
||||
var ports = getPorts();
|
||||
|
||||
if(!ports[index]) {
|
||||
return console.log('[cluster] invalid port for worker : ' + index + ' ports: ' + ports.length);
|
||||
}
|
||||
|
||||
process.env.isPrimary = isPrimary;
|
||||
process.env.isCluster = true;
|
||||
process.env.port = ports[index];
|
||||
|
||||
var worker = fork('app.js', [], {
|
||||
silent: silent,
|
||||
env: process.env
|
||||
});
|
||||
|
||||
worker.index = index;
|
||||
worker.isPrimary = isPrimary;
|
||||
|
||||
workers[index] = worker;
|
||||
|
||||
Loader.addWorkerEvents(worker);
|
||||
|
||||
if (silent) {
|
||||
var output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true });
|
||||
worker.stdout.pipe(output);
|
||||
worker.stderr.pipe(output);
|
||||
}
|
||||
}
|
||||
|
||||
function getPorts() {
|
||||
var urlObject = url.parse(nconf.get('url'));
|
||||
var port = nconf.get('port') || nconf.get('PORT') || urlObject.port || 4567;
|
||||
if (!Array.isArray(port)) {
|
||||
port = [port];
|
||||
}
|
||||
return port;
|
||||
}
|
||||
|
||||
Loader.restart = function() {
|
||||
killWorkers();
|
||||
|
||||
Loader.start();
|
||||
};
|
||||
|
||||
Loader.reload = function() {
|
||||
Object.keys(cluster.workers).forEach(function(worker_id) {
|
||||
cluster.workers[worker_id].send({
|
||||
workers.forEach(function(worker) {
|
||||
worker.send({
|
||||
action: 'reload'
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
Loader.notifyWorkers = function (msg) {
|
||||
Object.keys(cluster.workers).forEach(function(id) {
|
||||
cluster.workers[id].send(msg);
|
||||
Loader.stop = function() {
|
||||
killWorkers();
|
||||
|
||||
// Clean up the pidfile
|
||||
fs.unlinkSync(__dirname + '/pidfile');
|
||||
};
|
||||
|
||||
function killWorkers() {
|
||||
workers.forEach(function(worker) {
|
||||
worker.suicide = true;
|
||||
worker.kill();
|
||||
});
|
||||
}
|
||||
|
||||
Loader.notifyWorkers = function(msg, worker_pid) {
|
||||
worker_pid = parseInt(worker_pid, 10);
|
||||
workers.forEach(function(worker) {
|
||||
if (parseInt(worker.pid, 10) !== worker_pid) {
|
||||
try {
|
||||
worker.send(msg);
|
||||
} catch (e) {
|
||||
console.log('[cluster/notifyWorkers] Failed to reach pid ' + worker_pid);
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
nconf.argv().file({
|
||||
file: path.join(__dirname, '/config.json')
|
||||
});
|
||||
|
||||
numProcs = nconf.get('cluster') || 1;
|
||||
numProcs = (numProcs === true) ? require('os').cpus().length : numProcs;
|
||||
|
||||
if (nconf.get('daemon') !== false) {
|
||||
if (fs.existsSync(pidFilePath)) {
|
||||
try {
|
||||
@@ -240,7 +245,10 @@ if (nconf.get('daemon') !== false) {
|
||||
}
|
||||
}
|
||||
|
||||
require('daemon')();
|
||||
require('daemon')({
|
||||
stdout: process.stdout,
|
||||
stderr: process.stderr
|
||||
});
|
||||
|
||||
fs.writeFile(__dirname + '/pidfile', process.pid);
|
||||
}
|
||||
@@ -248,7 +256,6 @@ if (nconf.get('daemon') !== false) {
|
||||
async.series([
|
||||
Loader.init,
|
||||
Loader.displayStartupMessages,
|
||||
Loader.addClusterEvents,
|
||||
Loader.start
|
||||
], function(err) {
|
||||
if (err) {
|
||||
|
||||
68
minifier.js
68
minifier.js
@@ -12,25 +12,38 @@ var uglifyjs = require('uglify-js'),
|
||||
};
|
||||
|
||||
/* Javascript */
|
||||
Minifier.js.minify = function (scripts, relativePath, minify, callback) {
|
||||
var options = {
|
||||
compress: false,
|
||||
sourceMapURL: '/nodebb.min.js.map',
|
||||
outSourceMap: 'nodebb.min.js.map',
|
||||
sourceRoot: relativePath
|
||||
};
|
||||
|
||||
Minifier.js.minify = function (scripts, minify, callback) {
|
||||
scripts = scripts.filter(function(file) {
|
||||
return fs.existsSync(file);
|
||||
});
|
||||
|
||||
if (!minify) {
|
||||
options.mangle = false;
|
||||
options.prefix = 1;
|
||||
if (minify) {
|
||||
minifyScripts(scripts, function() {
|
||||
callback.apply(this, arguments);
|
||||
});
|
||||
} else {
|
||||
concatenateScripts(scripts, callback);
|
||||
}
|
||||
};
|
||||
|
||||
process.on('message', function(payload) {
|
||||
switch(payload.action) {
|
||||
case 'js':
|
||||
Minifier.js.minify(payload.scripts, payload.minify, function(minified) {
|
||||
process.send({
|
||||
type: 'end',
|
||||
minified: minified
|
||||
});
|
||||
});
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
function minifyScripts(scripts, callback) {
|
||||
try {
|
||||
var minified = uglifyjs.minify(scripts, options),
|
||||
var minified = uglifyjs.minify(scripts, {
|
||||
compress: false
|
||||
}),
|
||||
hasher = crypto.createHash('md5'),
|
||||
hash;
|
||||
|
||||
@@ -42,27 +55,26 @@ Minifier.js.minify = function (scripts, relativePath, minify, callback) {
|
||||
payload: hash.slice(0, 8)
|
||||
});
|
||||
|
||||
callback({
|
||||
js: minified.code,
|
||||
map: minified.map
|
||||
});
|
||||
callback(minified.code);
|
||||
} catch(err) {
|
||||
process.send({
|
||||
type: 'error',
|
||||
payload: err
|
||||
payload: err.message
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
process.on('message', function(payload) {
|
||||
switch(payload.action) {
|
||||
case 'js':
|
||||
Minifier.js.minify(payload.scripts, payload.relativePath, payload.minify, function(data) {
|
||||
function concatenateScripts(scripts, callback) {
|
||||
async.map(scripts, fs.readFile, function(err, scripts) {
|
||||
if (err) {
|
||||
process.send({
|
||||
type: 'end',
|
||||
data: data
|
||||
type: 'error',
|
||||
payload: err
|
||||
});
|
||||
});
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
scripts = scripts.join(require('os').EOL + ';');
|
||||
|
||||
callback(scripts);
|
||||
});
|
||||
}
|
||||
23
nodebb
23
nodebb
@@ -12,10 +12,11 @@ fi
|
||||
function pidExists() {
|
||||
if [ -e "pidfile" ];
|
||||
then
|
||||
kill -s 0 $(cat pidfile);
|
||||
if [ !$? ];
|
||||
if ps -p $(cat pidfile) > /dev/null
|
||||
then return 1;
|
||||
else return 0;
|
||||
else
|
||||
rm ./pidfile;
|
||||
return 0;
|
||||
fi
|
||||
else
|
||||
return 0;
|
||||
@@ -29,7 +30,7 @@ case "$1" in
|
||||
echo " \"./nodebb log\" to view server output";
|
||||
|
||||
# Start the loader daemon
|
||||
"$node" loader -d "$@"
|
||||
"$node" loader "$@"
|
||||
;;
|
||||
|
||||
stop)
|
||||
@@ -43,7 +44,7 @@ case "$1" in
|
||||
fi
|
||||
;;
|
||||
|
||||
reload|restart)
|
||||
restart)
|
||||
pidExists;
|
||||
if [ 0 -eq $? ];
|
||||
then
|
||||
@@ -54,6 +55,17 @@ case "$1" in
|
||||
fi
|
||||
;;
|
||||
|
||||
reload)
|
||||
pidExists;
|
||||
if [ 0 -eq $? ];
|
||||
then
|
||||
echo "NodeBB could not be reloaded, as a running instance could not be found.";
|
||||
else
|
||||
echo "Reloading NodeBB.";
|
||||
kill -12 $(cat pidfile);
|
||||
fi
|
||||
;;
|
||||
|
||||
status)
|
||||
pidExists;
|
||||
if [ 0 -eq $? ];
|
||||
@@ -80,7 +92,6 @@ case "$1" in
|
||||
npm i nodebb-theme-vanilla nodebb-theme-lavender nodebb-widget-essentials
|
||||
"$node" app --upgrade
|
||||
touch package.json
|
||||
echo -e "\n\e[00;32mNodeBB Dependencies up-to-date!\e[00;00m";
|
||||
;;
|
||||
|
||||
setup)
|
||||
|
||||
122
nodebb.bat
Normal file
122
nodebb.bat
Normal file
@@ -0,0 +1,122 @@
|
||||
@echo off
|
||||
|
||||
rem %1 action
|
||||
rem %2 subaction
|
||||
|
||||
setlocal enabledelayedexpansion
|
||||
2>nul call :CASE_%1
|
||||
if ERRORLEVEL 1 call :DEFAULT_CASE
|
||||
|
||||
exit /B
|
||||
|
||||
:CASE_start
|
||||
echo Starting NodeBB
|
||||
echo "nodebb.bat stop" to stop the NodeBB server
|
||||
echo "nodebb.bat log" to view server output
|
||||
|
||||
rem Start the loader daemon
|
||||
node loader %*
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_stop
|
||||
call :pidexists
|
||||
if %_result%==0 (
|
||||
echo NodeBB is already stopped.
|
||||
) else (
|
||||
echo Stopping NodeBB. Goodbye!
|
||||
|
||||
rem Doing this forcefully is probably not the best method
|
||||
taskkill /PID !_pid! /f>nul
|
||||
)
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_restart
|
||||
echo Unsupported
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_reload
|
||||
echo Unsupported
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_status
|
||||
call :pidexists
|
||||
if %_result%==0 (
|
||||
echo NodeBB is not running
|
||||
echo "nodebb.bat start" to launch the NodeBB server
|
||||
) else (
|
||||
echo NodeBB Running ^(pid !_pid!^)
|
||||
echo "nodebb.bat stop" to stop the NodeBB server
|
||||
echo "nodebb.bat log" to view server output
|
||||
echo "nodebb.bat restart" to restart NodeBB
|
||||
)
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_log
|
||||
cls
|
||||
type .\logs\output.log
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_upgrade
|
||||
call npm install
|
||||
call npm i nodebb-theme-vanilla nodebb-theme-lavender nodebb-widget-essentials
|
||||
node app --upgrade
|
||||
copy /b package.json +,,>nul
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_setup
|
||||
node app --setup %*
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_reset
|
||||
node app --reset --%2
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_dev
|
||||
echo Launching NodeBB in "development" mode.
|
||||
echo To run the production build of NodeBB, please use "forever".
|
||||
echo More Information: https://docs.nodebb.org/en/latest/running/index.html
|
||||
set NODE_ENV=development
|
||||
node loader --no-daemon %*
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:CASE_watch
|
||||
echo Not supported
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:DEFAULT_CASE
|
||||
echo Welcome to NodeBB
|
||||
echo Usage: nodebb.bat ^{start^|stop^|reload^|restart^|log^|setup^|reset^|upgrade^|dev^|watch^}
|
||||
|
||||
goto END_CASE
|
||||
|
||||
:END_CASE
|
||||
endlocal
|
||||
VER > NUL
|
||||
goto :EOF
|
||||
|
||||
:pidexists
|
||||
if exist %~dp0pidfile (
|
||||
set /p _pid=<pidfile
|
||||
|
||||
for /f "usebackq" %%Z in (`tasklist /nh /fi "PID eq !_pid!"`) do (
|
||||
if %%Z==INFO: (
|
||||
del pidfile
|
||||
set _result=0
|
||||
) else (
|
||||
set _result=1
|
||||
)
|
||||
)
|
||||
) else (
|
||||
set _result=0
|
||||
)
|
||||
2749
npm-shrinkwrap.json
generated
Normal file
2749
npm-shrinkwrap.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
39
package.json
39
package.json
@@ -2,7 +2,7 @@
|
||||
"name": "nodebb",
|
||||
"license": "GPLv3 or later",
|
||||
"description": "NodeBB Forum",
|
||||
"version": "0.5.3-dev",
|
||||
"version": "0.6.1",
|
||||
"homepage": "http://www.nodebb.org",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@@ -16,7 +16,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"async": "~0.9.0",
|
||||
"bcryptjs": "~2.0.1",
|
||||
"bcryptjs": "~2.1.0",
|
||||
"body-parser": "^1.9.0",
|
||||
"compression": "^1.1.0",
|
||||
"connect-ensure-login": "^0.1.1",
|
||||
@@ -28,20 +28,22 @@
|
||||
"daemon": "~1.1.0",
|
||||
"express": "^4.9.5",
|
||||
"express-session": "^1.8.2",
|
||||
"gm": "1.16.0",
|
||||
"gm": "1.17.0",
|
||||
"gravatar": "^1.1.0",
|
||||
"less": "^1.7.5",
|
||||
"heapdump": "^0.3.0",
|
||||
"less": "^2.0.0",
|
||||
"logrotate-stream": "^0.2.3",
|
||||
"mkdirp": "~0.5.0",
|
||||
"morgan": "^1.3.2",
|
||||
"nconf": "~0.6.7",
|
||||
"nodebb-plugin-dbsearch": "0.0.15",
|
||||
"nodebb-plugin-markdown": "^0.7.0",
|
||||
"nodebb-plugin-mentions": "~0.6.0",
|
||||
"nconf": "~0.7.1",
|
||||
"nodebb-plugin-dbsearch": "^0.1.0",
|
||||
"nodebb-plugin-markdown": "^0.8.0",
|
||||
"nodebb-plugin-mentions": "^0.9.0",
|
||||
"nodebb-plugin-soundpack-default": "~0.1.1",
|
||||
"nodebb-theme-lavender": "~0.1.0",
|
||||
"nodebb-theme-vanilla": "~0.1.0",
|
||||
"nodebb-widget-essentials": "~0.1.1",
|
||||
"nodebb-plugin-spam-be-gone": "^0.4.0",
|
||||
"nodebb-theme-lavender": "^0.2.0",
|
||||
"nodebb-theme-vanilla": "^0.2.0",
|
||||
"nodebb-widget-essentials": "~0.2.0",
|
||||
"npm": "^2.1.4",
|
||||
"passport": "^0.2.1",
|
||||
"passport-local": "1.0.0",
|
||||
@@ -52,15 +54,16 @@
|
||||
"semver": "^4.0.3",
|
||||
"serve-favicon": "^2.1.5",
|
||||
"sitemap": "^0.7.4",
|
||||
"socket.io": "^0.9.17",
|
||||
"socket.io-client": "^0.9.17",
|
||||
"socket.io-wildcard": "~0.1.1",
|
||||
"string": "^2.1.0",
|
||||
"templates.js": "0.1.2",
|
||||
"socket.io": "^1.2.1",
|
||||
"socket.io-client": "^1.2.1",
|
||||
"socket.io-redis": "^0.1.3",
|
||||
"socketio-wildcard": "~0.1.1",
|
||||
"string": "^3.0.0",
|
||||
"templates.js": "^0.1.15",
|
||||
"uglify-js": "git+https://github.com/julianlam/UglifyJS2.git",
|
||||
"underscore": "~1.7.0",
|
||||
"validator": "~3.21.0",
|
||||
"winston": "^0.8.0",
|
||||
"validator": "~3.28.0",
|
||||
"winston": "^0.9.0",
|
||||
"xregexp": "~2.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 521 B |
BIN
public/images/cover-default.png
Normal file
BIN
public/images/cover-default.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"new_topic_button": "موضوع جديد",
|
||||
"no_topics": "<strong>لا توجد مواضيع في هذه الفئة</strong>لماذا لا تحاول نشر موضوع؟<br />",
|
||||
"no_topics": "<strong>لا توجد مواضيع في هذه الفئة</strong>لم لا تحاول إنشاء موضوع؟<br />",
|
||||
"browsing": "تصفح",
|
||||
"no_replies": "لم يرد أحد",
|
||||
"share_this_category": "انشر هذه الفئة",
|
||||
"ignore": "Ignore"
|
||||
"ignore": "تجاهل"
|
||||
}
|
||||
@@ -1,23 +1,25 @@
|
||||
{
|
||||
"password-reset-requested": "Password Reset Requested - %1!",
|
||||
"welcome-to": "Welcome to %1",
|
||||
"greeting_no_name": "Hello",
|
||||
"greeting_with_name": "Hello %1",
|
||||
"welcome.text1": "Thank you for registering with %1!",
|
||||
"welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.",
|
||||
"welcome.cta": "Click here to confirm your email address",
|
||||
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
|
||||
"reset.text2": "To continue with the password reset, please click on the following link:",
|
||||
"reset.cta": "Click here to reset your password",
|
||||
"digest.notifications": "You have unread notifications from %1:",
|
||||
"digest.latest_topics": "Latest topics from %1",
|
||||
"digest.cta": "Click here to visit %1",
|
||||
"digest.unsub.info": "This digest was sent to you due to your subscription settings.",
|
||||
"digest.daily.no_topics": "There have been no active topics in the past day",
|
||||
"notif.chat.subject": "New chat message received from %1",
|
||||
"notif.chat.cta": "Click here to continue the conversation",
|
||||
"notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.",
|
||||
"unsub.cta": "Click here to alter those settings",
|
||||
"closing": "Thanks!"
|
||||
"password-reset-requested": "تم طلب إعادة تعيين كلمة السر - %1!",
|
||||
"welcome-to": "مرحبًا بك في %1",
|
||||
"greeting_no_name": "مرحبًا",
|
||||
"greeting_with_name": "مرحبًا بك يا %1",
|
||||
"welcome.text1": "شكرًا على تسجيلك في %1!",
|
||||
"welcome.text2": "لتفعيل حسابك، نحتاج إلى التأكد من صحة عنوان البريد الإلكتروني الذي تسجلت به.",
|
||||
"welcome.cta": "انقر هنا لتفعيل عنوان بريدك الإلكتروني",
|
||||
"reset.text1": "لقد توصلنا بطلب إعادة تعيين كلمة السرالخاصة بك، ربما لكونك قد نسيتها, إن لم يكن الأمر كذلك، المرجو تجاهل هذه الرسالة.",
|
||||
"reset.text2": "لمواصلة طلب إعاة تعيين كلمة السر، المرجو تتبع هذا الرابط.",
|
||||
"reset.cta": "انقر هنا لإعادة تعيين كلمة السر الخاصة بك.",
|
||||
"digest.notifications": "لديك تنبيهات غير مقروءة من طرف %1:",
|
||||
"digest.latest_topics": "آخر المستجدات من %1",
|
||||
"digest.cta": "انقر هنا لمشاهدة %1",
|
||||
"digest.unsub.info": "تم إرسال هذا الإشعار بآخر المستجدات وفقا لخيارات تسجيلكم.",
|
||||
"digest.no_topics": "ليس هناك مواضيع نشيطة في %1 الماضي",
|
||||
"notif.chat.subject": "هناك محادثة جديدة من %1",
|
||||
"notif.chat.cta": "انقر هنا لمتابعة المحادثة",
|
||||
"notif.chat.unsub.info": "تم إرسال هذا الإشعار بوجودة محادثة جديدة وفقا لخيارات تسجيلك.",
|
||||
"notif.post.cta": "Click here to read the full topic",
|
||||
"notif.post.unsub.info": "This post notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "هذه رسالة تجريبية للتأكد من صحة إعدادت الرسائل الإلكترونية في منتدى NodeBB خاصتك.",
|
||||
"unsub.cta": "انقر هنا لتغيير تلك الإعدادات",
|
||||
"closing": "شكرًا لك!"
|
||||
}
|
||||
@@ -1,64 +1,73 @@
|
||||
{
|
||||
"invalid-data": "بيانات غير صالحة",
|
||||
"not-logged-in": "لم تقم بتسجيل الدخول",
|
||||
"account-locked": "Your account has been locked temporarily",
|
||||
"search-requires-login": "Searching requires an account! Please login or register!",
|
||||
"invalid-cid": "Invalid Category ID",
|
||||
"invalid-tid": "Invalid Topic ID",
|
||||
"invalid-pid": "Invalid Post ID",
|
||||
"invalid-uid": "Invalid User ID",
|
||||
"account-locked": "تم إقفال حسابكم مؤقتًا.",
|
||||
"search-requires-login": "البحث في المنتدى يستلزم توفرك على حساب! المرجو تسجيل دخولك أو إنشاء حساب!",
|
||||
"invalid-cid": "قائمة غير موجودة",
|
||||
"invalid-tid": "موضوع غير متواجد",
|
||||
"invalid-pid": "رد غير موجود",
|
||||
"invalid-uid": "مستخدم غير موجود",
|
||||
"invalid-username": "اسم المستخدم غير مقبول",
|
||||
"invalid-email": "البريد الاكتروني غير مقبول",
|
||||
"invalid-title": "Invalid title!",
|
||||
"invalid-user-data": "Invalid User Data",
|
||||
"invalid-title": "عنوان غير صحيح",
|
||||
"invalid-user-data": "بيانات المستخدم غير صحيحة",
|
||||
"invalid-password": "كلمة السر غير مقبولة",
|
||||
"invalid-username-or-password": "Please specify both a username and password",
|
||||
"invalid-search-term": "Invalid search term",
|
||||
"invalid-pagination-value": "Invalid pagination value",
|
||||
"username-taken": "اسم المستخدم ماخوذ",
|
||||
"email-taken": "البريد الالكتروني ماخوذ",
|
||||
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
|
||||
"username-too-short": "Username too short",
|
||||
"username-too-long": "Username too long",
|
||||
"invalid-username-or-password": "المرجود تحديد اسم مستخدم و كلمة مرور",
|
||||
"invalid-search-term": "كلمة البحث غير صحيحة",
|
||||
"invalid-pagination-value": "رقم الصفحة غير موجود",
|
||||
"username-taken": "اسم المستخدم مأخوذ",
|
||||
"email-taken": "البريد الالكتروني مأخوذ",
|
||||
"email-not-confirmed": "عنوان بريدك الإلكتروني غير مفعل بعد. انقر هنا لتفعيله من فضلك.",
|
||||
"email-not-confirmed-chat": "You are unable to chat until your email is confirmed",
|
||||
"username-too-short": "اسم المستخدم قصير.",
|
||||
"username-too-long": "اسم المستخدم طويل",
|
||||
"user-banned": "المستخدم محظور",
|
||||
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
|
||||
"no-category": "Category does not exist",
|
||||
"no-topic": "Topic does not exist",
|
||||
"no-post": "Post does not exist",
|
||||
"no-group": "Group does not exist",
|
||||
"no-user": "User does not exist",
|
||||
"no-teaser": "Teaser does not exist",
|
||||
"no-privileges": "You do not have enough privileges for this action.",
|
||||
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
|
||||
"category-disabled": "Category disabled",
|
||||
"user-too-new": "عذرًا، يجب الانتظار %1 ثواني قبل إضافة ردك الأول.",
|
||||
"no-category": "قائمة غير موجودة",
|
||||
"no-topic": "موضوع غير موجود",
|
||||
"no-post": "رد غير موجود",
|
||||
"no-group": "مجموعة غير موجودة",
|
||||
"no-user": "اسم مستخدم غير موجود",
|
||||
"no-teaser": "مقتطف غير موجود",
|
||||
"no-privileges": "لاتملك الصلاحيات اللازمة للقيام بهذه العملية",
|
||||
"no-emailers-configured": "لا يمكن إرسال رسالة إلكترونية تجريبية لعدم وجود قوالب خاصة بالرسائل الإلكترونية،",
|
||||
"category-disabled": "قائمة معطلة",
|
||||
"topic-locked": "الموضوع مقفول",
|
||||
"still-uploading": "الرجاء انتظار الرفع",
|
||||
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
|
||||
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
|
||||
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
|
||||
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
|
||||
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
|
||||
"cant-vote-self-post": "You cannot vote for your own post",
|
||||
"already-favourited": "You have already favourited this post",
|
||||
"already-unfavourited": "You have already unfavourited this post",
|
||||
"cant-ban-other-admins": "You can't ban other admins!",
|
||||
"invalid-image-type": "نوع الصورة ممنوع",
|
||||
"group-name-too-short": "Group name too short",
|
||||
"group-already-exists": "Group already exists",
|
||||
"group-name-change-not-allowed": "Group name change not allowed",
|
||||
"post-already-deleted": "This post has already been deleted",
|
||||
"post-already-restored": "This post has already been restored",
|
||||
"topic-already-deleted": "This topic has already been deleted",
|
||||
"topic-already-restored": "This topic has already been restored",
|
||||
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
|
||||
"invalid-file": "Invalid File",
|
||||
"uploads-are-disabled": "Uploads are disabled",
|
||||
"content-too-short": "المرجو إدخال موضوع أطول من هذا. يجب أن تتوفر المواضيع على %1 حروف على الأقل.",
|
||||
"title-too-short": "المرجو إدخال عنوان أطول من هذا. يجب أن تتوفر العناوين على %1 حروف على الأقل.",
|
||||
"title-too-long": "المرجو إدخال عنوان أقصر من هذا. يجب ألا تتجاوز العناوين %1 حرفًا.",
|
||||
"too-many-posts": "يمكنك إنشاء المواضيع بمعدل موضوع واحد كل %1 ثانية - المرجو الانتظار قليلا.",
|
||||
"too-many-posts-newbie": "بصفتك مستخدمًا جديدًا، يمكنك إنشاء المواضيع بمعدل موضوع واحد كل %1 ثانية حتى تحصل على سمعة %2 - المرجو الانتظار قليلا.",
|
||||
"file-too-big": "حجم الملفات الأقصى المسموح به هو %1 كب - المرجو رفع ملف أقل حجمًا",
|
||||
"cant-vote-self-post": "لايمكنك التصويت لردك",
|
||||
"already-favourited": "لقد سبق وأضفت هذا الرد إلى المفضلة",
|
||||
"already-unfavourited": "لقد سبق وحذفت هذا الرد من المفضلة",
|
||||
"cant-ban-other-admins": "لايمكن حظر مدبر نظام آخر.",
|
||||
"invalid-image-type": "Invalid image type. Allowed types are: %1",
|
||||
"invalid-image-extension": "Invalid image extension",
|
||||
"group-name-too-short": "اسم المجموعة قصير",
|
||||
"group-already-exists": "المجموعة موجودة مسبقا",
|
||||
"group-name-change-not-allowed": "لايسمح بتغيير أسماء المجموعات",
|
||||
"group-already-member": "You are already part of this group",
|
||||
"group-needs-owner": "This group requires at least one owner",
|
||||
"post-already-deleted": "سبق وتم حذف هذا الرد",
|
||||
"post-already-restored": "سبق وتم إلغاء حذف هذا الرد",
|
||||
"topic-already-deleted": "سبق وتم حذف هذا الموضوع",
|
||||
"topic-already-restored": "سبق وتم إلغاء حذف هذا الرد",
|
||||
"topic-thumbnails-are-disabled": "الصور المصغرة غير مفعلة.",
|
||||
"invalid-file": "ملف غير مقبول",
|
||||
"uploads-are-disabled": "رفع الملفات غير مفعل",
|
||||
"upload-error": "مشكلة في الرفع: 1%",
|
||||
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
|
||||
"cant-chat-with-yourself": "You can't chat with yourself!",
|
||||
"reputation-system-disabled": "Reputation system is disabled.",
|
||||
"downvoting-disabled": "Downvoting is disabled",
|
||||
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
|
||||
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
|
||||
"reload-failed": "NodeBB encountered a problem while reloading: \"%1\". NodeBB will continue to serve the existing client-side assets, although you should undo what you did just prior to reloading."
|
||||
"signature-too-long": "عذرا، توقيعك يجب ألا يتجاوز %1 حرفًا",
|
||||
"cant-chat-with-yourself": "لايمكنك فتح محادثة مع نفسك",
|
||||
"chat-restricted": "هذا المستخدم عطل المحادثات الواردة عليه. يجب أن يتبعك حتى تتمكن من فتح محادثة معه.",
|
||||
"too-many-messages": "You have sent too many messages, please wait awhile.",
|
||||
"reputation-system-disabled": "نظام السمعة معطل",
|
||||
"downvoting-disabled": "التصويتات السلبية معطلة",
|
||||
"not-enough-reputation-to-downvote": "ليس لديك سمعة تكفي لإضافة صوت سلبي لهذا الموضوع",
|
||||
"not-enough-reputation-to-flag": "ليس لديك سمعة تكفي للإشعار بموضوع مخل",
|
||||
"reload-failed": "المنتدى واجه مشكلة أثناء إعادة التحميل: \"%1\". سيواصل المنتدى خدمة العملاء السابقين لكن يجب عليك إلغاء أي تغيير قمت به قبل إعادة التحميل.",
|
||||
"registration-error": "حدث خطأ أثناء التسجيل",
|
||||
"parse-error": "Something went wrong while parsing server response"
|
||||
}
|
||||
@@ -3,74 +3,79 @@
|
||||
"search": "بحث",
|
||||
"buttons.close": "أغلق",
|
||||
"403.title": "غير مسموح بالدخول",
|
||||
"403.message": "يبدو أنك قد تعثر على الصفحة التي لم يكن لديك الوصول إليها. ربما يجب عليك <a href='/login'> تسجيل الدخول </a> ",
|
||||
"403.message": "You seem to have stumbled upon a page that you do not have access to.",
|
||||
"403.login": "Perhaps you should <a href='%1/login'>try logging in</a>?",
|
||||
"404.title": "لم يتم العثور",
|
||||
"404.message": "يبدو أنك قد تعثرت على صفحة غير موجودة. عودة إلى الصفحة الرئيسية.",
|
||||
"404.message": "You seem to have stumbled upon a page that does not exist. Return to the <a href='%1/'>home page</a>.",
|
||||
"500.title": "خطأ داخلي.",
|
||||
"500.message": "عفوا! يبدو وكأنه شيء ذهب على نحو خاطئ!",
|
||||
"register": "تسجيل",
|
||||
"login": "دخول",
|
||||
"please_log_in": "Please Log In",
|
||||
"please_log_in": "المرجو تسجيل الدخول",
|
||||
"logout": "تسجيل الخروج",
|
||||
"posting_restriction_info": "Posting is currently restricted to registered members only, click here to log in.",
|
||||
"welcome_back": "Welcome Back",
|
||||
"you_have_successfully_logged_in": "You have successfully logged in",
|
||||
"posting_restriction_info": "إضافة مشاركات جديد حكر على الأعضاء المسجلين، انقر هنا لتسجيل الدخول.",
|
||||
"welcome_back": "مرحبًا بعودتك",
|
||||
"you_have_successfully_logged_in": "تم سجيل الدخول بنجاح",
|
||||
"save_changes": "حفظ التغييرات",
|
||||
"close": "أغلق",
|
||||
"pagination": "Pagination",
|
||||
"pagination.out_of": "%1 out of %2",
|
||||
"pagination.enter_index": "Enter index",
|
||||
"header.admin": "مشرف",
|
||||
"pagination": "الصفحات",
|
||||
"pagination.out_of": "%1 من %2",
|
||||
"pagination.enter_index": "أدخل الرقم التسلسلي",
|
||||
"header.admin": "مدبر نظام",
|
||||
"header.recent": "حديث",
|
||||
"header.unread": "غير مقروء",
|
||||
"header.tags": "Tags",
|
||||
"header.popular": "Popular",
|
||||
"header.tags": "وسم",
|
||||
"header.popular": "الأكثر شهرة",
|
||||
"header.users": "المستخدمين",
|
||||
"header.chats": "Chats",
|
||||
"header.notifications": "Notifications",
|
||||
"header.groups": "Groups",
|
||||
"header.chats": "المحادثات",
|
||||
"header.notifications": "التنبيهات",
|
||||
"header.search": "بحث",
|
||||
"header.profile": "ملف",
|
||||
"notifications.loading": "تحميل التبليغات",
|
||||
"chats.loading": "تحميل الدردشات",
|
||||
"motd.welcome": "مرحبا بكم NodeBB، منصة مناقشة المستقبل",
|
||||
"previouspage": "Previous Page",
|
||||
"nextpage": "Next Page",
|
||||
"alert.success": "Success",
|
||||
"alert.error": "Error",
|
||||
"alert.banned": "Banned",
|
||||
"alert.banned.message": "You have just been banned, you will now be logged out.",
|
||||
"alert.unfollow": "You are no longer following %1!",
|
||||
"alert.follow": "You are now following %1!",
|
||||
"online": "Online",
|
||||
"users": "Users",
|
||||
"topics": "Topics",
|
||||
"posts": "Posts",
|
||||
"views": "Views",
|
||||
"reputation": "Reputation",
|
||||
"read_more": "read more",
|
||||
"posted_ago_by_guest": "posted %1 by Guest",
|
||||
"posted_ago_by": "posted %1 by %2",
|
||||
"posted_ago": "posted %1",
|
||||
"posted_in_ago_by_guest": "posted in %1 %2 by Guest",
|
||||
"posted_in_ago_by": "posted in %1 %2 by %3",
|
||||
"posted_in_ago": "posted in %1 %2",
|
||||
"replied_ago": "replied %1",
|
||||
"user_posted_ago": "%1 posted %2",
|
||||
"guest_posted_ago": "Guest posted %1",
|
||||
"last_edited_by_ago": "last edited by %1 %2",
|
||||
"norecentposts": "No Recent Posts",
|
||||
"norecenttopics": "No Recent Topics",
|
||||
"recentposts": "Recent Posts",
|
||||
"recentips": "Recently Logged In IPs",
|
||||
"away": "Away",
|
||||
"dnd": "Do not Disturb",
|
||||
"invisible": "Invisible",
|
||||
"offline": "Offline",
|
||||
"email": "Email",
|
||||
"language": "Language",
|
||||
"guest": "Guest",
|
||||
"guests": "Guests",
|
||||
"updated.title": "Forum Updated",
|
||||
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
|
||||
"privacy": "Privacy"
|
||||
"previouspage": "الصفحة السابقة",
|
||||
"nextpage": "الصفحة التالية",
|
||||
"alert.success": "نجاح",
|
||||
"alert.error": "خطأ",
|
||||
"alert.banned": "محظور",
|
||||
"alert.banned.message": "لقد تم حظر حسابك. سيتم تسجيل الخروج.",
|
||||
"alert.unfollow": "أنت لا تتابع %1 بعد الآن!",
|
||||
"alert.follow": "أنت الآن تتابع %1!",
|
||||
"online": "المتواجدون حاليًّا",
|
||||
"users": "الأعضاء",
|
||||
"topics": "المواضيع",
|
||||
"posts": "المشاركات",
|
||||
"views": "المشاهدات",
|
||||
"reputation": "السمعة",
|
||||
"read_more": "اقرأ المزيد",
|
||||
"posted_ago_by_guest": "كتب %1 من طرف زائر",
|
||||
"posted_ago_by": "كتب %1 من طرف %2",
|
||||
"posted_ago": "كتب %1",
|
||||
"posted_in_ago_by_guest": "كتب في %1 %2 من طرف زائر",
|
||||
"posted_in_ago_by": "كتب في %1 %2 من طرف %3",
|
||||
"posted_in_ago": "كتب في %1 %2",
|
||||
"replied_ago": "رد %1",
|
||||
"user_posted_ago": "%1 كتب %2",
|
||||
"guest_posted_ago": "كتب زائر %1",
|
||||
"last_edited_by_ago": "آخر تعديل من طرف %1 %2",
|
||||
"norecentposts": "لاوجود لمشاركات جديدة",
|
||||
"norecenttopics": "لاوجود لمواضيع جديدة",
|
||||
"recentposts": "آخر المشاركات",
|
||||
"recentips": "آخر عناوين ال IP التي سجلت الدخول",
|
||||
"away": "غير متواجد",
|
||||
"dnd": "المرجو عدم الإزعاج",
|
||||
"invisible": "مخفي",
|
||||
"offline": "غير متصل",
|
||||
"email": "عنوان البريد الإلكتروني",
|
||||
"language": "اللغة",
|
||||
"guest": "زائر",
|
||||
"guests": "الزوار",
|
||||
"updated.title": "تم تحديث المنتدى",
|
||||
"updated.message": "لقد تم تحديث المنتدى إلى آخر نسخة للتو. المرجو إعادة تحميل الصفحة.",
|
||||
"privacy": "الخصوصية",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"delete_all": "حذف الكل"
|
||||
}
|
||||
@@ -1,8 +1,21 @@
|
||||
{
|
||||
"groups": "Groups",
|
||||
"view_group": "View Group",
|
||||
"details.title": "Group Details",
|
||||
"details.members": "Member List",
|
||||
"details.has_no_posts": "This group's members have not made any posts.",
|
||||
"details.latest_posts": "Latest Posts"
|
||||
"groups": "المجموعات",
|
||||
"view_group": "معاينة المجموعة",
|
||||
"owner": "Group Owner",
|
||||
"new_group": "Create New Group",
|
||||
"no_groups_found": "There are no groups to see",
|
||||
"cover-instructions": "Drag and Drop a photo, drag to position, and hit <strong>Save</strong>",
|
||||
"cover-change": "Change",
|
||||
"cover-save": "Save",
|
||||
"cover-saving": "Saving",
|
||||
"details.title": "تفاصيل المجموعة",
|
||||
"details.members": "لائحة الأعضاء",
|
||||
"details.pending": "Pending Members",
|
||||
"details.has_no_posts": "أعضاء هذه المجموعة لم يضيفوا أية مشاركة",
|
||||
"details.latest_posts": "آخر المشاركات",
|
||||
"details.private": "Private Group",
|
||||
"details.public": "Public Group",
|
||||
"details.owner_options": "Group Administration",
|
||||
"event.updated": "Group details have been updated",
|
||||
"event.deleted": "The group \"%1\" has been deleted"
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"username": "Username / Email",
|
||||
"username": "اسم المستخدم / عنوان البريد الإلكتروني",
|
||||
"remember_me": "تذكرني؟",
|
||||
"forgot_password": "نسيت كلمة المرور؟",
|
||||
"alternative_logins": "تسجيلات الدخول البديلة",
|
||||
"failed_login_attempt": "فشلت محاولة تسجيل الدخول، يرجى المحاولة مرة أخرى.",
|
||||
"login_successful": "قمت بتسجيل الدخول بنجاح!",
|
||||
"dont_have_account": "Don't have an account?"
|
||||
"dont_have_account": "لم تفتح حسابك بعد؟"
|
||||
}
|
||||
@@ -1,22 +1,21 @@
|
||||
{
|
||||
"chat.chatting_with": "الدردشة مع <span id=\"chat-with-name\"></span>",
|
||||
"chat.placeholder": "Type chat message here, press enter to send",
|
||||
"chat.placeholder": "أكتب رسالة دردشة هنا، اضغط ENTER للإرسال",
|
||||
"chat.send": "أرسل",
|
||||
"chat.no_active": "لا يوجد لديك دردشات نشطة.",
|
||||
"chat.user_typing": "%1 is typing ...",
|
||||
"chat.user_has_messaged_you": "%1 has messaged you.",
|
||||
"chat.see_all": "See all Chats",
|
||||
"chat.no-messages": "Please select a recipient to view chat message history",
|
||||
"chat.recent-chats": "Recent Chats",
|
||||
"chat.contacts": "Contacts",
|
||||
"chat.message-history": "Message History",
|
||||
"chat.pop-out": "Pop out chat",
|
||||
"chat.maximize": "Maximize",
|
||||
"chat.yesterday": "Yesterday",
|
||||
"chat.seven_days": "7 Days",
|
||||
"chat.thirty_days": "30 Days",
|
||||
"chat.three_months": "3 Months",
|
||||
"composer.user_said_in": "%1 said in %2:",
|
||||
"composer.user_said": "%1 said:",
|
||||
"composer.discard": "Are you sure you wish to discard this post?"
|
||||
"chat.user_typing": "%1 يكتب رسالة...",
|
||||
"chat.user_has_messaged_you": "%1 أرسل لك رسالة.",
|
||||
"chat.see_all": "معاينة كل الدردشات",
|
||||
"chat.no-messages": "المرجو اختيار مرسل إليه لمعاينة تاريخ الدردشات",
|
||||
"chat.recent-chats": "آخر الدردشات",
|
||||
"chat.contacts": "الأصدقاء",
|
||||
"chat.message-history": "تاريخ الرسائل",
|
||||
"chat.pop-out": "افتح الدردشة في نافذة خاصة",
|
||||
"chat.maximize": "تكبير",
|
||||
"chat.seven_days": "7 أيام",
|
||||
"chat.thirty_days": "30 يومًا",
|
||||
"chat.three_months": "3 أشهر",
|
||||
"composer.user_said_in": "%1 كتب في %2",
|
||||
"composer.user_said": "%1 كتب:",
|
||||
"composer.discard": "هل أنت متأكد أنك تريد التخلي عن التغييرات؟"
|
||||
}
|
||||
@@ -1,27 +1,27 @@
|
||||
{
|
||||
"title": "إعلام",
|
||||
"no_notifs": "You have no new notifications",
|
||||
"see_all": "See all Notifications",
|
||||
"back_to_home": "Back to %1",
|
||||
"title": "تنبيهات",
|
||||
"no_notifs": "ليس لديك أية تنبيهات جديدة",
|
||||
"see_all": "معاينة كل التنبيهات",
|
||||
"back_to_home": "عودة إلى %1",
|
||||
"outgoing_link": "رابط خارجي",
|
||||
"outgoing_link_message": "You are now leaving %1.",
|
||||
"continue_to": "Continue to %1",
|
||||
"return_to": "Return to %1",
|
||||
"new_notification": "New Notification",
|
||||
"you_have_unread_notifications": "You have unread notifications.",
|
||||
"new_message_from": "New message from <strong>%1</strong>",
|
||||
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
|
||||
"moved_your_post": "<strong>%1</strong> has moved your post.",
|
||||
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
|
||||
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
|
||||
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
|
||||
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
|
||||
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
|
||||
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
|
||||
"user_started_following_you": "<strong>%1</strong> started following you.",
|
||||
"email-confirmed": "Email Confirmed",
|
||||
"email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.",
|
||||
"email-confirm-error": "An error occurred...",
|
||||
"email-confirm-error-message": "There was a problem validating your email address. Perhaps the code was invalid or has expired.",
|
||||
"email-confirm-sent": "Confirmation email sent."
|
||||
"outgoing_link_message": "أنت تغادر %1 حاليا.",
|
||||
"continue_to": "استمر إلى %1",
|
||||
"return_to": "عودة إى %1",
|
||||
"new_notification": "تنبيه جديد",
|
||||
"you_have_unread_notifications": "لديك تنبيهات غير مقروءة.",
|
||||
"new_message_from": "رسالة جديدة من <strong>%1</strong>",
|
||||
"upvoted_your_post_in": "<strong>%1</strong> أضاف صوتًا إيجابيا إلى مشاركتك في <strong>%2</strong>.",
|
||||
"moved_your_post": "<strong>%1</strong> نقل مشاركتك.",
|
||||
"moved_your_topic": "<strong>%1</strong> نقل موضوعك.",
|
||||
"favourited_your_post_in": "<strong>%1</strong> أضاف مشاركتك في <strong>%2</strong> إلى مفضلته.",
|
||||
"user_flagged_post_in": "<strong>%1</strong> أشعَرَ بمشاركة مخلة في <strong>%2</strong>",
|
||||
"user_posted_to": "<strong>%1</strong> أضاف ردا إلى: <strong>%2</strong>",
|
||||
"user_posted_topic": "<strong>%1</strong> أنشأ موضوعًا جديدًا: <strong>%2</strong>",
|
||||
"user_mentioned_you_in": "<strong>%1</strong> ذكرَ اسمك في <strong>%2</strong>",
|
||||
"user_started_following_you": "<strong>%1</strong> صار يتابعك.",
|
||||
"email-confirmed": "تم التحقق من عنوان البريد الإلكتروني",
|
||||
"email-confirmed-message": "شكرًا على إثبات صحة عنوان بريدك الإلكتروني. صار حسابك مفعلًا بالكامل.",
|
||||
"email-confirm-error": "حدث خطأ ما...",
|
||||
"email-confirm-error-message": "حدث خطأ أثناء التحقق من عنوان بريدك الإلكتروني. ربما رمز التفعيل خاطئ أو انتهت صلاحيته.",
|
||||
"email-confirm-sent": "تم إرسال بريد التفعيل."
|
||||
}
|
||||
@@ -1,18 +1,18 @@
|
||||
{
|
||||
"home": "Home",
|
||||
"unread": "Unread Topics",
|
||||
"popular": "Popular Topics",
|
||||
"recent": "Recent Topics",
|
||||
"users": "Registered Users",
|
||||
"notifications": "Notifications",
|
||||
"tags": "Topics tagged under \"%1\"",
|
||||
"user.edit": "Editing \"%1\"",
|
||||
"user.following": "People %1 Follows",
|
||||
"user.followers": "People who Follow %1",
|
||||
"user.posts": "Posts made by %1",
|
||||
"user.topics": "Topics created by %1",
|
||||
"user.favourites": "%1's Favourite Posts",
|
||||
"user.settings": "User Settings",
|
||||
"maintenance.text": "%1 is currently undergoing maintenance. Please come back another time.",
|
||||
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
|
||||
"home": "الصفحة الرئيسية",
|
||||
"unread": "المواضيع غير المقروءة",
|
||||
"popular": "المواضيع الأكثر شهرة",
|
||||
"recent": "المواضيع الحديثة",
|
||||
"users": "المستخدمون المسجلون",
|
||||
"notifications": "التنبيهات",
|
||||
"tags": "المواضيع المرتبطة بالوسم %1",
|
||||
"user.edit": "تعديل \"%1\"",
|
||||
"user.following": "المستخدمون الذين يتبعهم %1",
|
||||
"user.followers": "المستخدمون الذين يتبعون %1",
|
||||
"user.posts": "ردود %1",
|
||||
"user.topics": "مواضيع %1",
|
||||
"user.favourites": "مفضلات %1",
|
||||
"user.settings": "خيارات المستخدم",
|
||||
"maintenance.text": "جاري صيانة %1. المرجو العودة لاحقًا.",
|
||||
"maintenance.messageIntro": "بالإضافة إلى ذلك، قام مدبر النظام بترك هذه الرسالة:"
|
||||
}
|
||||
@@ -1,9 +1,18 @@
|
||||
{
|
||||
"title": "Recent",
|
||||
"title": "الحديثة",
|
||||
"day": "يوم",
|
||||
"week": "أسبوع",
|
||||
"month": "شهر",
|
||||
"year": "Year",
|
||||
"alltime": "All Time",
|
||||
"no_recent_topics": "There are no recent topics."
|
||||
"year": "سنة",
|
||||
"alltime": "دائمًا",
|
||||
"no_recent_topics": "لاوجود لمشاركات جديدة",
|
||||
"there-is-a-new-topic": "There is a new topic.",
|
||||
"there-is-a-new-topic-and-a-new-post": "There is a new topic and a new post.",
|
||||
"there-is-a-new-topic-and-new-posts": "There is a new topic and %1 new posts.",
|
||||
"there-are-new-topics": "There are %1 new topics.",
|
||||
"there-are-new-topics-and-a-new-post": "There are %1 new topics and a new post.",
|
||||
"there-are-new-topics-and-new-posts": "There are %1 new topics and %2 new posts.",
|
||||
"there-is-a-new-post": "There is a new post.",
|
||||
"there-are-new-posts": "There are %1 new posts.",
|
||||
"click-here-to-reload": "Click here to reload."
|
||||
}
|
||||
@@ -12,7 +12,7 @@
|
||||
"confirm_password": "تأكيد كلمة السر",
|
||||
"confirm_password_placeholder": "تأكيد كلمة السر",
|
||||
"register_now_button": "قم بالتسجيل الآن",
|
||||
"alternative_registration": "التسجيل البديلة",
|
||||
"terms_of_use": "Terms of Use",
|
||||
"agree_to_terms_of_use": "I agree to the Terms of Use"
|
||||
"alternative_registration": "طريقة تسجيل بديلة",
|
||||
"terms_of_use": "قوانين الاستخدام",
|
||||
"agree_to_terms_of_use": "أوافق على قوانين الاستخدام"
|
||||
}
|
||||
@@ -3,12 +3,12 @@
|
||||
"update_password": "تحديث كلمة السر",
|
||||
"password_changed.title": "تم تغير كلمة السر",
|
||||
"password_changed.message": "<p>تم تغير كلمة السر بنجاح. يرجى <a href='/login'>إعادة الدخول</a></p>",
|
||||
"wrong_reset_code.title": "إعادة تعيين رمز غير صحيح",
|
||||
"wrong_reset_code.message": "رامز إعادة التعين غير صحيح، يرجى المحاولة مرة أخرى أو <a href='/reset'>اطلب رمز جديد</a>",
|
||||
"wrong_reset_code.title": "رمز إعادة التعيين غير صحيح",
|
||||
"wrong_reset_code.message": "رمز إعادة التعين غير صحيح، يرجى المحاولة مرة أخرى أو <a href='/reset'>اطلب رمزا جديدا</a>",
|
||||
"new_password": "كلمة السر الجديدة",
|
||||
"repeat_password": "تأكيد كلمة السر",
|
||||
"enter_email": "يرجى إدخال <strong>عنوان البريد الإلكتروني</strong> الخاص بك وسوف نرسل لك رسالة بالبريد الالكتروني مع تعليمات حول كيفية إستعادة حسابك.",
|
||||
"enter_email_address": "Enter Email Address",
|
||||
"enter_email_address": "ادخل عنوان البريد الإلكتروني",
|
||||
"password_reset_sent": "إعادة تعيين كلمة السر أرسلت",
|
||||
"invalid_email": "بريد إلكتروني غير صالح أو غير موجود"
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
{
|
||||
"results_matching": "%1 result(s) matching \"%2\", (%3 seconds)",
|
||||
"no-matches": "No posts found"
|
||||
"results_matching": "%1 نتيجة (نتائج) موافقة ل \"%2\", (%3 ثواني)",
|
||||
"no-matches": "No matches found",
|
||||
"in": "In",
|
||||
"by": "By",
|
||||
"posted-by": "Posted by"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"success": "Success",
|
||||
"topic-post": "You have successfully posted.",
|
||||
"authentication-successful": "Authentication Successful",
|
||||
"settings-saved": "Settings saved!"
|
||||
"success": "نجاح",
|
||||
"topic-post": "لقد تمت الإضافة بنجاح.",
|
||||
"authentication-successful": "تم تسجيل الدخول بنجاح",
|
||||
"settings-saved": "تم حفظ التغييرات!"
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"no_tag_topics": "There are no topics with this tag.",
|
||||
"tags": "Tags",
|
||||
"enter_tags_here": "Enter tags here. Press enter after each tag.",
|
||||
"enter_tags_here_short": "Enter tags...",
|
||||
"no_tags": "There are no tags yet."
|
||||
"no_tag_topics": "لاوجود لمواضيع تحمل هذا الوسم.",
|
||||
"tags": "بطاقات",
|
||||
"enter_tags_here": "أدخل البطاقات هنا. اضغط ENTER بعد كل بطاقة.",
|
||||
"enter_tags_here_short": "أدخل البطاقات...",
|
||||
"no_tags": "لاتوجد هناك بطاقات بعد."
|
||||
}
|
||||
@@ -1,96 +1,98 @@
|
||||
{
|
||||
"topic": "موضوع",
|
||||
"topic_id": "Topic ID",
|
||||
"topic_id_placeholder": "Enter topic ID",
|
||||
"topic_id": "معرف الموضوع",
|
||||
"topic_id_placeholder": "أدخل معرف الموضوع",
|
||||
"no_topics_found": "لا توجد مواضيع !",
|
||||
"no_posts_found": "No posts found!",
|
||||
"post_is_deleted": "This post is deleted!",
|
||||
"profile": "ملف",
|
||||
"posted_by": "Posted by %1",
|
||||
"posted_by_guest": "Posted by Guest",
|
||||
"no_posts_found": "لا توجد مشاركات!",
|
||||
"post_is_deleted": "هذه المشاركة محذوفة!",
|
||||
"profile": "الملف الشخصي",
|
||||
"posted_by": "كتب من طرف %1",
|
||||
"posted_by_guest": "كتب من طرف زائر",
|
||||
"chat": "دردشة",
|
||||
"notify_me": "تنبه من ردود جديدة في هذا الموضوع",
|
||||
"notify_me": "تلق تنبيهات بالردود الجديدة في هذا الموضوع",
|
||||
"quote": "اقتبس",
|
||||
"reply": "رد",
|
||||
"edit": "صحح",
|
||||
"edit": "تعديل",
|
||||
"delete": "حذف",
|
||||
"purge": "Purge",
|
||||
"restore": "Restore",
|
||||
"purge": "تطهير",
|
||||
"restore": "استعادة",
|
||||
"move": "انقل",
|
||||
"fork": "فرع",
|
||||
"link": "رابط",
|
||||
"share": "شارك",
|
||||
"share": "نشر",
|
||||
"tools": "أدوات",
|
||||
"flag": "Flag",
|
||||
"locked": "Locked",
|
||||
"bookmark_instructions": "Click here to return to your last position or close to discard.",
|
||||
"flag_title": "Flag this post for moderation",
|
||||
"flag_confirm": "Are you sure you want to flag this post?",
|
||||
"flag_success": "This post has been flagged for moderation.",
|
||||
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
|
||||
"following_topic.message": "You will now be receiving notifications when somebody posts to this topic.",
|
||||
"not_following_topic.message": "You will no longer receive notifications from this topic.",
|
||||
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
|
||||
"markAsUnreadForAll.success": "Topic marked as unread for all.",
|
||||
"watch": "Watch",
|
||||
"unwatch": "Unwatch",
|
||||
"watch.title": "Be notified of new replies in this topic",
|
||||
"unwatch.title": "Stop watching this topic",
|
||||
"share_this_post": "Share this Post",
|
||||
"thread_tools.title": "Topic Tools",
|
||||
"flag": "اشعار بمشاركة مخلة",
|
||||
"locked": "مقفل",
|
||||
"bookmark_instructions": "انقر هنا للإكمال أو أغلق للإلغاء.",
|
||||
"flag_title": "إشعار بمشاركة مخلة.",
|
||||
"flag_confirm": "هل تريد حقًّا أن تشعر بهذه المشاركة على أنها مخلة؟",
|
||||
"flag_success": "تم الإشعار بهذه المشاركة على أنها مخلة",
|
||||
"deleted_message": "هذه المشاركة محذوفة. فقط من لهم صلاحية الإشراف على ا لمشاركات يمكنهم معاينتها.",
|
||||
"following_topic.message": "ستستلم تنبيها عند كل مشاركة جديدة في هذا الموضوع.",
|
||||
"not_following_topic.message": "لن تستلم أي تنبيه بخصوص عذا الموضوع بعد الآن.",
|
||||
"login_to_subscribe": "المرجو إنشاء حساب أو تسجيل الدخول حتى يمكنك متابعة هذا الموضوع.",
|
||||
"markAsUnreadForAll.success": "تم تحديد الموضوع على أنه غير مقروء.",
|
||||
"watch": "مراقبة",
|
||||
"unwatch": "الغاء المراقبة",
|
||||
"watch.title": "استلم تنبيها بالردود الجديدة في هذا الموضوع",
|
||||
"unwatch.title": "ألغ مراقبة هذا الموضوع",
|
||||
"share_this_post": "انشر هذا الموضوع",
|
||||
"thread_tools.title": "أدوات الموضوع",
|
||||
"thread_tools.markAsUnreadForAll": "علم غير مقروء",
|
||||
"thread_tools.pin": "علق الموضوع",
|
||||
"thread_tools.unpin": "Unpin Topic",
|
||||
"thread_tools.lock": "قفل الموضوع",
|
||||
"thread_tools.unlock": "Unlock Topic",
|
||||
"thread_tools.unpin": "إلغاء تعليق الموضوع",
|
||||
"thread_tools.lock": "أقفل الموضوع",
|
||||
"thread_tools.unlock": "إلغاء إقفال الموضوع",
|
||||
"thread_tools.move": "نقل الموضوع",
|
||||
"thread_tools.move_all": "Move All",
|
||||
"thread_tools.fork": "تفرع الموضوع",
|
||||
"thread_tools.move_all": "نقل الكل",
|
||||
"thread_tools.fork": "إنشاء فرع الموضوع",
|
||||
"thread_tools.delete": "حذف الموضوع",
|
||||
"thread_tools.delete_confirm": "Are you sure you want to delete this topic?",
|
||||
"thread_tools.restore": "Restore Topic",
|
||||
"thread_tools.restore_confirm": "Are you sure you want to restore this topic?",
|
||||
"thread_tools.purge": "Purge Topic",
|
||||
"thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
|
||||
"topic_move_success": "This topic has been successfully moved to %1",
|
||||
"post_delete_confirm": "Are you sure you want to delete this post?",
|
||||
"post_restore_confirm": "Are you sure you want to restore this post?",
|
||||
"post_purge_confirm": "Are you sure you want to purge this post?",
|
||||
"thread_tools.delete_confirm": "هل أنت متأكد أنك تريد حذف هذا الموضوع؟",
|
||||
"thread_tools.restore": "استعادة الموضوع",
|
||||
"thread_tools.restore_confirm": "هل أنت متأكد أنك تريد استعادة هذا الموضوع؟",
|
||||
"thread_tools.purge": "تطهير الموضوع",
|
||||
"thread_tools.purge_confirm": "هل أنت متأكد أنك تريد تطهير هذا الموضوع؟",
|
||||
"topic_move_success": "تم نقل هذا الموضوع إلى %1 بنجاح",
|
||||
"post_delete_confirm": "هل أنت متأكد أنك تريد حذف هذه المشاركة؟",
|
||||
"post_restore_confirm": "هل أنت متأكد أنك تريد استعادة هذه المشاركة؟",
|
||||
"post_purge_confirm": "هل أنت متأكد أنك تريد تطهير هذه المشاركة؟",
|
||||
"load_categories": "تحميل الفئات",
|
||||
"disabled_categories_note": "الفئات المجلدة رمادية",
|
||||
"disabled_categories_note": "الفئات المعطلة رمادية",
|
||||
"confirm_move": "انقل",
|
||||
"confirm_fork": "فرع",
|
||||
"favourite": "المفضل",
|
||||
"favourite": "إضافة إلى المفضلة",
|
||||
"favourites": "المفضلة",
|
||||
"favourites.has_no_favourites": "ليس لديك أي ردود مفضلة. فضل بعد الردود لرؤيتهم هنا",
|
||||
"favourites.has_no_favourites": "ليس لديك أي ردود مفضلة. أضف بعض المشاركات إلى المفضلة لرؤيتهم هنا",
|
||||
"loading_more_posts": "تحميل المزيد من المشاركات",
|
||||
"move_topic": "نقل الموضوع",
|
||||
"move_topics": "Move Topics",
|
||||
"move_post": "نقل الرد",
|
||||
"post_moved": "Post moved!",
|
||||
"move_topics": "نقل المواضيع",
|
||||
"move_post": "نقل المشاركة",
|
||||
"post_moved": "تم نقل المشاركة",
|
||||
"fork_topic": "فرع الموضوع",
|
||||
"topic_will_be_moved_to": "هذا الموضوع سوف ينقل إلى فئة",
|
||||
"fork_topic_instruction": "إضغط على الردود لتفريعهم",
|
||||
"fork_no_pids": "لم تختار أي رد",
|
||||
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
|
||||
"composer.title_placeholder": "Enter your topic title here...",
|
||||
"composer.discard": "Discard",
|
||||
"composer.submit": "Submit",
|
||||
"composer.replying_to": "Replying to %1",
|
||||
"composer.new_topic": "New Topic",
|
||||
"composer.uploading": "uploading...",
|
||||
"composer.thumb_url_label": "Paste a topic thumbnail URL",
|
||||
"composer.thumb_title": "Add a thumbnail to this topic",
|
||||
"fork_topic_instruction": "إضغط على المشاركات التي تريد تفريعها",
|
||||
"fork_no_pids": "لم تختر أي مشاركة",
|
||||
"fork_success": "تم إنشاء فرع للموضوع بنجاح! إضغط هنا لمعاينة الفرع.",
|
||||
"composer.title_placeholder": "أدخل عنوان موضوعك هنا...",
|
||||
"composer.handle_placeholder": "Name",
|
||||
"composer.discard": "نبذ التغييرات",
|
||||
"composer.submit": "حفظ",
|
||||
"composer.replying_to": "الرد على %1",
|
||||
"composer.new_topic": "موضوع جديد",
|
||||
"composer.uploading": "جاري الرفع",
|
||||
"composer.thumb_url_label": "ألصق رابط الصورة المصغرة للموضوع",
|
||||
"composer.thumb_title": "إضافة صورة مصغرة للموضوع",
|
||||
"composer.thumb_url_placeholder": "http://example.com/thumb.png",
|
||||
"composer.thumb_file_label": "Or upload a file",
|
||||
"composer.thumb_remove": "Clear fields",
|
||||
"composer.drag_and_drop_images": "Drag and Drop Images Here",
|
||||
"more_users_and_guests": "%1 more user(s) and %2 guest(s)",
|
||||
"more_users": "%1 more user(s)",
|
||||
"more_guests": "%1 more guest(s)",
|
||||
"users_and_others": "%1 and %2 others",
|
||||
"sort_by": "Sort by",
|
||||
"oldest_to_newest": "Oldest to Newest",
|
||||
"newest_to_oldest": "Newest to Oldest",
|
||||
"most_votes": "Most votes"
|
||||
"composer.thumb_file_label": "أو قم برفع ملف",
|
||||
"composer.thumb_remove": "تفريغ الخانات",
|
||||
"composer.drag_and_drop_images": "اسحب وأسقص الصور هنا",
|
||||
"more_users_and_guests": "%1 مستخدم(ين) و %2 زائر(ين)",
|
||||
"more_users": "%1 مستخدم(ين)",
|
||||
"more_guests": "%1 زائر(ين)",
|
||||
"users_and_others": "%1 و %2 آخرين",
|
||||
"sort_by": "ترتيب حسب",
|
||||
"oldest_to_newest": "من الأقدم إلى الأحدث",
|
||||
"newest_to_oldest": "من الأحدث إلى الأقدم",
|
||||
"most_votes": "الأكثر تصويتًا",
|
||||
"most_posts": "Most posts"
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"title": "Unread",
|
||||
"title": "غير مقروء",
|
||||
"no_unread_topics": "ليس هناك أي موضوع غير مقروء",
|
||||
"load_more": "حمل المزيد",
|
||||
"mark_as_read": "Mark as Read",
|
||||
"selected": "Selected",
|
||||
"all": "All",
|
||||
"topics_marked_as_read.success": "Topics marked as read!"
|
||||
"mark_as_read": "حدد غير مقروء",
|
||||
"selected": "المختارة",
|
||||
"all": "الكل",
|
||||
"topics_marked_as_read.success": "تم تحديد المواضيع على أنها مقروءة!"
|
||||
}
|
||||
@@ -2,71 +2,79 @@
|
||||
"banned": "محظور",
|
||||
"offline": "ليس موجود حالياً",
|
||||
"username": "إسم المستخدم",
|
||||
"joindate": "Join Date",
|
||||
"postcount": "Post Count",
|
||||
"email": "البريد الإلكتروني",
|
||||
"confirm_email": "Confirm Email",
|
||||
"delete_account": "Delete Account",
|
||||
"delete_account_confirm": "Are you sure you want to delete your account? <br /><strong>This action is irreversible and you will not be able to recover any of your data</strong><br /><br />Enter your username to confirm that you wish to destroy this account.",
|
||||
"confirm_email": "تأكيد عنوان البريد الإلكتروني",
|
||||
"delete_account": "حذف الحساب",
|
||||
"delete_account_confirm": "هل أن متأكد أنك تريد حذف حسابك؟<br /><strong> هذه العملية غير قابلة للإلغاء ولن يكون بالإمكان استعادة بياناتك</strong><br /><br />أدخل اسم المستخدم الخاص بك لتأكيد عملية الحذف",
|
||||
"fullname": "الاسم الكامل",
|
||||
"website": "الموقع الإلكتروني",
|
||||
"location": "موقع",
|
||||
"age": "عمر",
|
||||
"location": "الموقع",
|
||||
"age": "السن",
|
||||
"joined": "تاريخ التسجيل",
|
||||
"lastonline": "تاريخ أخر دخول",
|
||||
"profile": "Profile",
|
||||
"profile_views": "مشاهد الملف",
|
||||
"reputation": "سمعة",
|
||||
"favourites": "Favourites",
|
||||
"followers": "أتباع",
|
||||
"following": "يتبع",
|
||||
"lastonline": "تاريخ آخر دخول",
|
||||
"profile": "الملف الشخصي",
|
||||
"profile_views": "عدد مشاهدات الملف الشخصي",
|
||||
"reputation": "السمعة",
|
||||
"favourites": "المفضلات",
|
||||
"watched": "Watched",
|
||||
"followers": "المتابعون",
|
||||
"following": "يتابع",
|
||||
"signature": "توقيع",
|
||||
"gravatar": "Gravatar",
|
||||
"birthday": "عيد ميلاد",
|
||||
"chat": "Chat",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"profile_update_success": "Profile has been updated successfully!",
|
||||
"chat": "محادثة",
|
||||
"follow": "تابع",
|
||||
"unfollow": "إلغاء المتابعة",
|
||||
"profile_update_success": "تم تحديث الملف الشخصي بنجاح",
|
||||
"change_picture": "تغيير الصورة",
|
||||
"edit": "صحح",
|
||||
"uploaded_picture": "صورة تم تحميلها",
|
||||
"upload_new_picture": "تحميل صورة جديدة",
|
||||
"upload_new_picture_from_url": "Upload New Picture From URL",
|
||||
"current_password": "Current Password",
|
||||
"edit": "تعديل",
|
||||
"uploaded_picture": "الصورة المرفوعة",
|
||||
"upload_new_picture": "رفع صورة جديدة",
|
||||
"upload_new_picture_from_url": "رفع صورة جديدة بواسطة رابط",
|
||||
"current_password": "كلمة السر الحالية",
|
||||
"change_password": "تغيير كلمة السر",
|
||||
"change_password_error": "Invalid Password!",
|
||||
"change_password_error_wrong_current": "Your current password is not correct!",
|
||||
"change_password_error_length": "Password too short!",
|
||||
"change_password_error_match": "Passwords must match!",
|
||||
"change_password_error_privileges": "You do not have the rights to change this password.",
|
||||
"change_password_success": "Your password is updated!",
|
||||
"change_password_error": "كلمة سر غير صحيحة",
|
||||
"change_password_error_wrong_current": "كلمة السر الحالية ليست صحيحة",
|
||||
"change_password_error_length": "كلمة السر قصيرة",
|
||||
"change_password_error_match": "كلمة السر غير مطابقة لتأكيد كلمة السر",
|
||||
"change_password_error_privileges": "ليس لديك الصلاحيات الكافية لتغيير كلمة السر هذه.",
|
||||
"change_password_success": "تم تحديث كلمة السر خاصتك.",
|
||||
"confirm_password": "تأكيد كلمة السر",
|
||||
"password": "كلمة السر",
|
||||
"username_taken_workaround": "The username you requested was already taken, so we have altered it slightly. You are now known as <strong>%1</strong>",
|
||||
"upload_picture": "تحميل الصورة",
|
||||
"upload_a_picture": "تحميل صورة",
|
||||
"image_spec": "You may only upload PNG, JPG, or GIF files",
|
||||
"max": "max.",
|
||||
"settings": "Settings",
|
||||
"username_taken_workaround": "اسم المستخدم الذي اخترته سبق أخذه، لذا تم تغييره قليلا. أن الآن مسجل تحت الاسم <strong>%1</strong>",
|
||||
"upload_picture": "ارفع الصورة",
|
||||
"upload_a_picture": "رفع صورة",
|
||||
"image_spec": "لايمكنك رفع إلا الصور ذات الصيغ PNG أو JPG أو GIF.",
|
||||
"max": "الحد الأقصى",
|
||||
"settings": "خيارات",
|
||||
"show_email": "أظهر بريدي الإلكتروني",
|
||||
"show_fullname": "Show My Full Name",
|
||||
"digest_label": "Subscribe to Digest",
|
||||
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
|
||||
"digest_off": "Off",
|
||||
"digest_daily": "Daily",
|
||||
"digest_weekly": "Weekly",
|
||||
"digest_monthly": "Monthly",
|
||||
"send_chat_notifications": "Send an email if a new chat message arrives and I am not online",
|
||||
"has_no_follower": "هذا المستخدم ليس لديه أي أتباع :(",
|
||||
"follows_no_one": "هذا المستخدم لا يتبع أحد :(",
|
||||
"has_no_posts": "This user didn't post anything yet.",
|
||||
"has_no_topics": "This user didn't post any topics yet.",
|
||||
"show_fullname": "أظهر اسمي الكامل",
|
||||
"restrict_chats": "لاتسمح بورود محادثات إلا من طرف المستخدمين الذين أتابعهم.",
|
||||
"digest_label": "اشترك في النشرة الدورية",
|
||||
"digest_description": "استلام اشعارات بآخر مستجدات هذا القسم (التنبيهات والمواضيع الجديدة) عبر البريد الإلكتروني وفقا لجدول زمني محدد.",
|
||||
"digest_off": "غير مفعل",
|
||||
"digest_daily": "يوميا",
|
||||
"digest_weekly": "أسبوعيًّا",
|
||||
"digest_monthly": "شهريًّا",
|
||||
"send_chat_notifications": "استلام رسالة إلكترونية عند ورود محادثة وأنا غير متصل.",
|
||||
"send_post_notifications": "Send an email when replies are made to topics I am subscribed to",
|
||||
"has_no_follower": "هذا المستخدم ليس لديه أي متابع :(",
|
||||
"follows_no_one": "هذا المستخدم لا يتابع أحد :(",
|
||||
"has_no_posts": "هذا المستخدم لم يكتب أي شيء بعد.",
|
||||
"has_no_topics": "هذا المستخدم لم ينشئ أي موضوع بعد.",
|
||||
"has_no_watched_topics": "This user didn't watch any topics yet.",
|
||||
"email_hidden": "البريد الإلكتروني مخفي",
|
||||
"hidden": "مخفي",
|
||||
"paginate_description": "Paginate topics and posts instead of using infinite scroll.",
|
||||
"topics_per_page": "Topics per Page",
|
||||
"posts_per_page": "Posts per Page",
|
||||
"notification_sounds": "Play a sound when you receive a notification.",
|
||||
"browsing": "Browsing Settings",
|
||||
"open_links_in_new_tab": "Open outgoing links in new tab?",
|
||||
"follow_topics_you_reply_to": "Follow topics that you reply to.",
|
||||
"follow_topics_you_create": "Follow topics you create."
|
||||
"paginate_description": "عرض المواضيع والردود موزعة على صفحات عوض صفحة واحدة.",
|
||||
"topics_per_page": "المواضيع في كل صفحة",
|
||||
"posts_per_page": "الردود في كل صفحة",
|
||||
"notification_sounds": "تشغيل ملف صوتي عند استلام التنبيهات.",
|
||||
"browsing": "خيارات التصفح",
|
||||
"open_links_in_new_tab": "فتح الروابط الخارجية في تبويب جديد؟",
|
||||
"enable_topic_searching": "تفعيل خاصية البحث داخل المواضيع",
|
||||
"topic_search_help": "في حالة تفعيلها، ستعوض خاصيةُ البحث داخل المواضيع خاصيةَ البحث الخاصة بالمتصفح، فتمكنك بالتالي بالبحث في الموضوع بأكمله دون الاقتصار على مايظهر في الشاشة فحسب.",
|
||||
"follow_topics_you_reply_to": "متابعة المشاركات التي ترد عليها",
|
||||
"follow_topics_you_create": "متابعة المشاركات التي تكتبها"
|
||||
}
|
||||
@@ -5,5 +5,8 @@
|
||||
"search": "بحث",
|
||||
"enter_username": "أدخل اسم مستخدم للبحث",
|
||||
"load_more": "حمل المزيد",
|
||||
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
|
||||
"users-found-search-took": "تم إيجاد %1 مستخدمـ(ين)! استغرق البحث %2 ميليثانية.",
|
||||
"filter-by": "Filter By",
|
||||
"online-only": "Online only",
|
||||
"picture-only": "Picture only"
|
||||
}
|
||||
8
public/language/bn/category.json
Normal file
8
public/language/bn/category.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"new_topic_button": "নতুন টপিক",
|
||||
"no_topics": "<strong>এই বিভাগে কোন টপিক নেই! </strong><br /> আপনি চাইলে একটি পোষ্ট করতে পারেন।",
|
||||
"browsing": "ব্রাউজিং",
|
||||
"no_replies": "কোন রিপ্লাই নেই",
|
||||
"share_this_category": "এই বিভাগটি অন্যের সাথে ভাগাভাগি করুন",
|
||||
"ignore": "উপেক্ষা করুন"
|
||||
}
|
||||
25
public/language/bn/email.json
Normal file
25
public/language/bn/email.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"password-reset-requested": "পাসওয়ার্ড রিসেটের জন্য অনুরোধ করা হয়েছে - %1!",
|
||||
"welcome-to": "%1 এ স্বাগতম",
|
||||
"greeting_no_name": "স্বাগতম",
|
||||
"greeting_with_name": "স্বাগতম %1",
|
||||
"welcome.text1": "%1 এ নিবন্ধন করার জন্য আপনাকে ধন্যবাদ!",
|
||||
"welcome.text2": "আপনার একাউন্ট এ্যাক্টিভেট করার জন্য, আপনি যে ইমেইল এড্রেস ব্যাবহার করে নিবন্ধন করেছেন তা যাচাই করতে হবে",
|
||||
"welcome.cta": "আপনার ইমেইল এড্রেস নিশ্চিত করার জন্য এখানে ক্লিক করুন",
|
||||
"reset.text1": "আমরা আপনার পাসওয়ার্ড রিসেট করার অনুরোধ পেয়েছি, সম্ভবত আপনি আপনার পাসওয়ার্ড ভুলে গিয়েছেন বলেই। তবে যদি তা না হয়ে থাকে, তাহলে এই মেইলকে উপেক্ষা করতে পারেন।",
|
||||
"reset.text2": "পাসওয়ার্ড রিসেট করতে নিচের লিংকে ক্লিক করুন",
|
||||
"reset.cta": "পাসওয়ার্ড রিসেট করতে এখানে ক্লিক করুন",
|
||||
"digest.notifications": "%1 থেকে আনরিড নোটিফিকেশন আছে।",
|
||||
"digest.latest_topics": "%1 এর সর্বশেষ টপিকসমূহ",
|
||||
"digest.cta": "%1 ভিজিট করতে এখানে ক্লিক করুন",
|
||||
"digest.unsub.info": "আপনার সাবস্ক্রীপশন সেটিংসের কারনে আপনাকে এই ডাইজেষ্টটি পাঠানো হয়েছে।",
|
||||
"digest.no_topics": "%1 এ কোন সক্রিয় টপিক নেই।",
|
||||
"notif.chat.subject": "%1 এর থেকে নতুন মেসেজ এসেছে।",
|
||||
"notif.chat.cta": "কথপোকথন চালিয়ে যেতে এখানে ক্লিক করুন",
|
||||
"notif.chat.unsub.info": "আপনার সাবস্ক্রীপশন সেটিংসের কারনে আপনার এই নোটিফিকেশন পাঠানো হয়েছে",
|
||||
"notif.post.cta": "Click here to read the full topic",
|
||||
"notif.post.unsub.info": "This post notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "আপনি সঠিকভাবে নোডবিবির জন্য মেইলার সেটাপ করেছেন কিনা নিশ্চিত করার জন্য এই টেষ্ট ইমেইল পাঠানো হয়েছে",
|
||||
"unsub.cta": "সেটিংসগুলো পরিবর্তন করতে এখানে ক্লিক করুন",
|
||||
"closing": "ধন্যবাদ!"
|
||||
}
|
||||
73
public/language/bn/error.json
Normal file
73
public/language/bn/error.json
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"invalid-data": "ভুল তথ্য",
|
||||
"not-logged-in": "আপনি লগিন করেননি",
|
||||
"account-locked": "আপনার অ্যাকাউন্ট সাময়িকভাবে লক করা হয়েছে",
|
||||
"search-requires-login": "অনুসন্ধান করার জন্য একটি অ্যাকাউন্ট প্রয়োজন! অনুগ্রহপূর্বক প্রবেশ করুন অথবা নিবন্ধন করুন!",
|
||||
"invalid-cid": "ভুল বিভাগ নাম্বার",
|
||||
"invalid-tid": "ভুল টপিক নাম্বার",
|
||||
"invalid-pid": "ভুল পোস্ট নাম্বার",
|
||||
"invalid-uid": "ভুল ব্যবহারকারী নাম্বার",
|
||||
"invalid-username": "ভুল ইউজারনেম",
|
||||
"invalid-email": "ভুল ইমেইল",
|
||||
"invalid-title": "ভুল শিরোনাম",
|
||||
"invalid-user-data": "ভুল ব্যবহারকারী তথ্য",
|
||||
"invalid-password": "ভুল পাসওয়ার্ড",
|
||||
"invalid-username-or-password": "অনুগ্রহ পূর্বক ইউজারনেম এবং পাসওয়ার্ড উভয়ই প্রদান করুন",
|
||||
"invalid-search-term": "অগ্রহনযোগ্য সার্চ টার্ম",
|
||||
"invalid-pagination-value": "ভুল পৃষ্ঠা নাম্বার",
|
||||
"username-taken": "ইউজারনেম আগেই ব্যবহৃত",
|
||||
"email-taken": "ইমেইল আগেই ব্যবহৃত",
|
||||
"email-not-confirmed": "আপনার ইমেইল এড্রেস নিশ্চিত করা হয় নি, নিশ্চিত করতে এখানে ক্লিক করুন।",
|
||||
"email-not-confirmed-chat": "You are unable to chat until your email is confirmed",
|
||||
"username-too-short": "খুব ছোট ইউজারনেম",
|
||||
"username-too-long": "ইউজারনেম বড় হয়ে গিয়েছে",
|
||||
"user-banned": "ব্যবহারকারী নিষিদ্ধ",
|
||||
"user-too-new": "দুঃখিত! প্রথম পোষ্ট করার জন্য আপনাকে %1 সেকেন্ড অপেক্ষা করতে হবে।",
|
||||
"no-category": "বিভাগটি খুজে পাওয়া যায় নি",
|
||||
"no-topic": "এই টপিক নেই",
|
||||
"no-post": "এই পোষ্ট নেই",
|
||||
"no-group": "এই গ্রুপ অস্তিত্বহীন",
|
||||
"no-user": "এই নামে কোন সদস্য নেই",
|
||||
"no-teaser": "টিজারটি খুজে পাওয়া যায় নি",
|
||||
"no-privileges": "এই কাজটির জন্য আপনার পর্যাপ্ত অধিকার নেই",
|
||||
"no-emailers-configured": "কোন ইমেল প্লাগইন লোড করা নেই, কাজেই টেস্ট মেইল পাঠানো সম্ভব হচ্ছে না",
|
||||
"category-disabled": "বিভাগটি নিষ্ক্রিয়",
|
||||
"topic-locked": "টপিক বন্ধ",
|
||||
"still-uploading": "আপলোড সম্পূর্ণ জন্য অনুগ্রহ করে অপেক্ষা করুন",
|
||||
"content-too-short": "অনুগ্রহকরে অপেক্ষকৃত বড় পোষ্ট করুন। একটি পোষ্টে নূন্যতম %1 অক্ষর থাকতে হবে।",
|
||||
"title-too-short": "অনুগ্রহপূর্বক বড় শিরোনাম ব্যাবহার করুন। শিরোনামের জন্য নূন্যতম %1 অক্ষর ব্যাবহার করতে হবে।",
|
||||
"title-too-long": "অনুগ্রহ করে সংক্ষিপ্ত শিরোনাম লিখুন। শিরোনাম %1 অক্ষরের বেশি হতে পারবে না।",
|
||||
"too-many-posts": "আপনি প্রতি %1 সেকেন্ডে একবার পোষ্ট করতে পারবেন। পরবর্তী পোষ্ট করার জন্য অপেক্ষা করুন। ",
|
||||
"too-many-posts-newbie": "নতুন সদস্য হিসাবে %2 সন্মানণা পাওয়া পর্যন্ত আপনি প্রতি %1 সেকেন্ডে একবার পোষ্ট করতে পারবেন। পরবর্তী পোষ্ট করার জন্য অপেক্ষা করুন। ",
|
||||
"file-too-big": "সর্বোচ্চ গৃহীত ফাইলসাইজ হচ্ছে %1 kb - অনুগ্রহপূর্বক ছোট ফাইল আপলোড করুন",
|
||||
"cant-vote-self-post": "আপনি নিজের পোস্টে ভোট দিতে পারবেন না।",
|
||||
"already-favourited": "আপনি ইতিমধ্যে এই পোষ্টটি পছন্দের তালিকায় যোগ করেছেন",
|
||||
"already-unfavourited": "আপনি ইতিমধ্যে এই পোষ্টটি আপনার পছন্দের তালিকা থেকে সরিয়ে ফেলেছেন",
|
||||
"cant-ban-other-admins": "আপনি অন্য এ্যাডমিনদের নিষিদ্ধ করতে পারেন না!",
|
||||
"invalid-image-type": "Invalid image type. Allowed types are: %1",
|
||||
"invalid-image-extension": "Invalid image extension",
|
||||
"group-name-too-short": "গ্রুপের নাম খুব ছোট",
|
||||
"group-already-exists": "গ্রুপ ইতিমধ্যেই বিদ্যমান",
|
||||
"group-name-change-not-allowed": "গ্রুপের নাম পরিবর্তনের অনুমতি নেই",
|
||||
"group-already-member": "You are already part of this group",
|
||||
"group-needs-owner": "This group requires at least one owner",
|
||||
"post-already-deleted": "এই পোস্টটি ইতিমধ্যে ডিলিট করা হয়ে গিয়েছে",
|
||||
"post-already-restored": "এই পোষ্টটি ইতিমধ্যে পুনরোদ্ধার করা হয়েছে",
|
||||
"topic-already-deleted": "এই টপিকটি ইতিমধ্যে ডিলিট করা হয়েছে",
|
||||
"topic-already-restored": "এই টপিকটি ইতিমধ্যে পুনরোদ্ধার করা হয়েছে",
|
||||
"topic-thumbnails-are-disabled": "টপিক থাম্বনেল নিষ্ক্রিয় করা। ",
|
||||
"invalid-file": "ভুল ফাইল",
|
||||
"uploads-are-disabled": "আপলোড নিষ্ক্রিয় করা",
|
||||
"upload-error": "আপলোড ত্রুটিঃ %1",
|
||||
"signature-too-long": "দুঃখিত, আপনার সাক্ষর %1 অক্ষরের বেশী হতে পারবে না। ",
|
||||
"cant-chat-with-yourself": "আপনি নিজের সাথে চ্যাট করতে পারবেন না!",
|
||||
"chat-restricted": "এই সদস্য তার বার্তালাপ সংরক্ষিত রেখেছেন। এই সদস্য আপনাকে ফলো করার পরই কেবলমাত্র আপনি তার সাথে চ্যাট করতে পারবেন",
|
||||
"too-many-messages": "You have sent too many messages, please wait awhile.",
|
||||
"reputation-system-disabled": "সম্মাননা ব্যাবস্থা নিস্ক্রীয় রাখা হয়েছে",
|
||||
"downvoting-disabled": "ঋণাত্মক ভোট নিস্ক্রীয় রাখা হয়েছে।",
|
||||
"not-enough-reputation-to-downvote": "আপনার এই পোস্ট downvote করার জন্য পর্যাপ্ত সম্মাননা নেই",
|
||||
"not-enough-reputation-to-flag": "এই পোষ্টকে ফ্লাগ করার জন্য আপনার পর্যাপ্ত সম্মাননা নেই",
|
||||
"reload-failed": "\"%1\" রিলোড করতে সমস্যা হয়েছে। রিলোডের পূর্বে যা করা হয়েছিল সেটি আনডু করা সমীচীন। ",
|
||||
"registration-error": "নিবন্ধন এরর!",
|
||||
"parse-error": "Something went wrong while parsing server response"
|
||||
}
|
||||
81
public/language/bn/global.json
Normal file
81
public/language/bn/global.json
Normal file
@@ -0,0 +1,81 @@
|
||||
{
|
||||
"home": "নীড়পাতা",
|
||||
"search": "অনুসন্ধান",
|
||||
"buttons.close": "বন্ধ",
|
||||
"403.title": "প্রবেশাধিকার প্রত্যাখ্যাত",
|
||||
"403.message": "You seem to have stumbled upon a page that you do not have access to.",
|
||||
"403.login": "Perhaps you should <a href='%1/login'>try logging in</a>?",
|
||||
"404.title": "পাওয়া যায়নি",
|
||||
"404.message": "You seem to have stumbled upon a page that does not exist. Return to the <a href='%1/'>home page</a>.",
|
||||
"500.title": "অভ্যন্তরীণ ত্রুটি।",
|
||||
"500.message": "ওহো! কিছু ভুল হয়েছে মনে হচ্ছে!",
|
||||
"register": "নিবন্ধন",
|
||||
"login": "প্রবেশ",
|
||||
"please_log_in": "অনুগ্রহ করে প্রবেশ করুন",
|
||||
"logout": "প্রস্থান",
|
||||
"posting_restriction_info": "বর্তমানে নিবন্ধিত সদস্যরাই কেবল পোস্ট করতে পারেন, লগ ইন করতে এখানে ক্লিক করুন।",
|
||||
"welcome_back": "আপনাকে স্বাগতম",
|
||||
"you_have_successfully_logged_in": "আপনি সফলভাবে প্রবেশ করেছেন",
|
||||
"save_changes": "পরিবর্তনগুলি সঞ্চয় করুন",
|
||||
"close": "বন্ধ",
|
||||
"pagination": "পাতা নং",
|
||||
"pagination.out_of": "%2 এর মাঝে %1",
|
||||
"pagination.enter_index": "সূচক লিখুন",
|
||||
"header.admin": "অ্যাডমিন",
|
||||
"header.recent": "সাম্প্রতিক",
|
||||
"header.unread": "অপঠিত",
|
||||
"header.tags": "ট্যাগ",
|
||||
"header.popular": "জনপ্রিয়",
|
||||
"header.users": "ব্যবহারকারীগণ",
|
||||
"header.groups": "Groups",
|
||||
"header.chats": "কথোপকথন",
|
||||
"header.notifications": "বিজ্ঞপ্তি",
|
||||
"header.search": "অনুসন্ধান",
|
||||
"header.profile": "প্রোফাইল",
|
||||
"notifications.loading": "বিজ্ঞপ্তিগুলি লোড হচ্ছে",
|
||||
"chats.loading": "কথোপকথনগুলি লোড হচ্ছে ",
|
||||
"motd.welcome": "ভবিষ্যতের আলোচনার প্লাটফর্ম, NodeBB তে স্বাগতম।",
|
||||
"previouspage": "আগের পাতা",
|
||||
"nextpage": "পরের পাতা",
|
||||
"alert.success": "সফল",
|
||||
"alert.error": "ত্রুটি",
|
||||
"alert.banned": "নিষিদ্ধ",
|
||||
"alert.banned.message": "আপনাকে কেবলই নিষিদ্ধ করা হয়েছে, আপনি এখন লগআউট হয়ে যাবেন।",
|
||||
"alert.unfollow": "আপনি আর %1 কে অনুসরণ করছেন না!",
|
||||
"alert.follow": "আপনি এখন %1 কে অনুসরণ করছেন!",
|
||||
"online": "অনলাইন",
|
||||
"users": "ব্যবহারকারীগণ",
|
||||
"topics": "টপিক",
|
||||
"posts": "পোস্টগুলি",
|
||||
"views": "দেখেছেন",
|
||||
"reputation": "সন্মাননা",
|
||||
"read_more": "আরো পড়ুন",
|
||||
"posted_ago_by_guest": "অতিথি পোস্ট করেছেন %1",
|
||||
"posted_ago_by": " %1 %2 দ্বারা পোস্টকৃত",
|
||||
"posted_ago": "পোস্ট করেছেন %1",
|
||||
"posted_in_ago_by_guest": "%1 বিভাগে অতিথি পোস্ট করেছেন %2",
|
||||
"posted_in_ago_by": "%3 %1 বিভাগে পোস্ট করেছেন %2",
|
||||
"posted_in_ago": "%1 বিভাগে পোস্ট করা হয়েছে %2 আগে",
|
||||
"replied_ago": "উত্তর দেয়া হয়েছে %1 ",
|
||||
"user_posted_ago": "%1 পোস্ট করেছেন %2",
|
||||
"guest_posted_ago": "অতিথি পোস্ট করেছেন %1",
|
||||
"last_edited_by_ago": "সর্বশেষ সম্পাদনা করেছেন %1 %2",
|
||||
"norecentposts": "কোনও সাম্প্রতিক পোস্ট নেই",
|
||||
"norecenttopics": "কোনও সাম্প্রতিক টপিক নেই",
|
||||
"recentposts": "সাম্প্রতিক পোস্ট",
|
||||
"recentips": "সাম্প্রতিক প্রবেশকৃত আইপি সমুহ",
|
||||
"away": "দূরে",
|
||||
"dnd": "বিরক্ত করবেন না",
|
||||
"invisible": "অদৃশ্য",
|
||||
"offline": "অফলাইন",
|
||||
"email": "ইমেইল",
|
||||
"language": "ভাষা",
|
||||
"guest": "অতিথি",
|
||||
"guests": "অতিথি",
|
||||
"updated.title": "ফোরাম আপডেট করা হয়েছে",
|
||||
"updated.message": "এই ফোরামে এইমাত্র সর্বশেষ সংস্করণে আপডেট করা হয়েছে। পৃষ্ঠাটি রিফ্রেশ করতে এখানে ক্লিক করুন।",
|
||||
"privacy": "নিরাপত্তা",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"delete_all": "সব মুছে ফেলুন"
|
||||
}
|
||||
21
public/language/bn/groups.json
Normal file
21
public/language/bn/groups.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"groups": "গ্রুপসমূহ",
|
||||
"view_group": "গ্রুপ দেখুন",
|
||||
"owner": "Group Owner",
|
||||
"new_group": "Create New Group",
|
||||
"no_groups_found": "There are no groups to see",
|
||||
"cover-instructions": "Drag and Drop a photo, drag to position, and hit <strong>Save</strong>",
|
||||
"cover-change": "Change",
|
||||
"cover-save": "Save",
|
||||
"cover-saving": "Saving",
|
||||
"details.title": "গ্রুপের বিস্তারিত",
|
||||
"details.members": "সদস্য তালিকা",
|
||||
"details.pending": "Pending Members",
|
||||
"details.has_no_posts": "এই গ্রুপের সদস্যরা এখনো কোন পোষ্ট করেন নি",
|
||||
"details.latest_posts": "সর্বশেষ পোষ্টসমূহ",
|
||||
"details.private": "Private Group",
|
||||
"details.public": "Public Group",
|
||||
"details.owner_options": "Group Administration",
|
||||
"event.updated": "Group details have been updated",
|
||||
"event.deleted": "The group \"%1\" has been deleted"
|
||||
}
|
||||
5
public/language/bn/language.json
Normal file
5
public/language/bn/language.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "বাংলা",
|
||||
"code": "bn",
|
||||
"dir": "ltr"
|
||||
}
|
||||
9
public/language/bn/login.json
Normal file
9
public/language/bn/login.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"username": "ইউজারনেম / ইমেইল",
|
||||
"remember_me": "মনে রাখুন",
|
||||
"forgot_password": "পাসওয়ার্ড ভুলে গিয়েছেন?",
|
||||
"alternative_logins": "বিকল্প প্রবেশ",
|
||||
"failed_login_attempt": "প্রবেশ সফল হয় নি, আবার চেষ্টা করুন।",
|
||||
"login_successful": "আপনি সফলভাবে প্রবেশ করেছেন!",
|
||||
"dont_have_account": "কোন একাউন্ট নেই?"
|
||||
}
|
||||
21
public/language/bn/modules.json
Normal file
21
public/language/bn/modules.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"chat.chatting_with": "<span id=\"chat-with-name\"></span> এর সাথে কথোপকথন",
|
||||
"chat.placeholder": "এখানে আপনার বার্তা লিখুন। পাঠানোর জন্য Enter চাপুন",
|
||||
"chat.send": "প্রেরন করুন",
|
||||
"chat.no_active": "আপনার কোন সচল কথোপকথন নেই",
|
||||
"chat.user_typing": "%1 লিখছেন",
|
||||
"chat.user_has_messaged_you": "%1 আপনাকে বার্তা পাঠিয়েছেন",
|
||||
"chat.see_all": "সকল কথোপকথন দেখুন",
|
||||
"chat.no-messages": "মেসেজ হিস্টোরী দেখতে প্রাপক নির্বাচন করুন",
|
||||
"chat.recent-chats": "সাম্প্রতিক চ্যাটসমূহ",
|
||||
"chat.contacts": "কন্টাক্টস",
|
||||
"chat.message-history": "মেসেজ হিস্টোরী",
|
||||
"chat.pop-out": "চ্যাট উইন্ডো আলাদা করুন",
|
||||
"chat.maximize": "ম্যাক্সিমাইজ",
|
||||
"chat.seven_days": "৭ দিন",
|
||||
"chat.thirty_days": "৩০ দিন",
|
||||
"chat.three_months": "৩ মাস",
|
||||
"composer.user_said_in": "%1 বলেছেন %2:",
|
||||
"composer.user_said": "%1 বলেছেনঃ",
|
||||
"composer.discard": "আপনি কি নিশ্চিত যে আপনি এই পোস্ট বাতিল করতে ইচ্ছুক?"
|
||||
}
|
||||
27
public/language/bn/notifications.json
Normal file
27
public/language/bn/notifications.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"title": "বিজ্ঞপ্তিগুলো",
|
||||
"no_notifs": "আপনার নতুন কোন বিজ্ঞপ্তি নেই",
|
||||
"see_all": "সকল বিজ্ঞপ্তিগুলো দেখুন",
|
||||
"back_to_home": "ফিরুন %1",
|
||||
"outgoing_link": "বহির্গামী লিঙ্ক",
|
||||
"outgoing_link_message": "আপনি এখন %1 ত্যাগ করছেন",
|
||||
"continue_to": "%1 তে আগান",
|
||||
"return_to": "%1 এ ফেরত যান",
|
||||
"new_notification": "নতুন বিজ্ঞপ্তি",
|
||||
"you_have_unread_notifications": "আপনার অপঠিত বিজ্ঞপ্তি আছে।",
|
||||
"new_message_from": "<strong>%1</strong> থেকে নতুন বার্তা",
|
||||
"upvoted_your_post_in": "<strong>%1</strong> , <strong>%2</strong> এ আপানার পোষ্টকে আপভোট করেছেন। ",
|
||||
"moved_your_post": "<strong>%1</strong> আপনার পোষ্ট সরিয়ে নিয়েছেন। ",
|
||||
"moved_your_topic": "<strong>%1</strong> আপনার টপিক সরিয়ে নিয়েছেন। ",
|
||||
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
|
||||
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
|
||||
"user_posted_to": "<strong>%1</strong> একটি উত্তর দিয়েছেন: <strong>%2</strong>",
|
||||
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
|
||||
"user_mentioned_you_in": "<strong>%1</strong>, <strong>%2</strong> এ আপনার নাম উল্লেখ করেছেন",
|
||||
"user_started_following_you": "<strong>%1</strong> আপনাকে অনুসরন করা শুরু করেছেন।",
|
||||
"email-confirmed": "ইমেইল নিশ্চিত করা হয়েছে",
|
||||
"email-confirmed-message": "আপনার ইমেইল যাচাই করার জন্য আপনাকে ধন্যবাদ। আপনার অ্যাকাউন্টটি এখন সম্পূর্ণরূপে সক্রিয়।",
|
||||
"email-confirm-error": "একটি ত্রুটি ঘটেছে...",
|
||||
"email-confirm-error-message": "আপনার ইমেল ঠিকানার বৈধতা যাচাইয়ে একটি সমস্যা হয়েছে। সম্ভবত কোডটি ভুল ছিল অথবা কোডের মেয়াদ শেষ হয়ে গিয়েছে।",
|
||||
"email-confirm-sent": "নিশ্চিতকরণ ইমেইল পাঠানো হয়েছে।"
|
||||
}
|
||||
18
public/language/bn/pages.json
Normal file
18
public/language/bn/pages.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"home": "নীড়পাতা",
|
||||
"unread": "অপঠিত টপিক",
|
||||
"popular": "জনপ্রিয় টপিক",
|
||||
"recent": "সাম্প্রতিক টপিক",
|
||||
"users": "নিবন্ধিত সদস্যগণ",
|
||||
"notifications": "বিজ্ঞপ্তি",
|
||||
"tags": "\"%1\" এ ট্যগকৃত টপিকসমূহ",
|
||||
"user.edit": "সম্পাদনা \"%1\"",
|
||||
"user.following": "%1 যাদের অনুসরণ করেন",
|
||||
"user.followers": "যারা %1 কে অনুসরণ করেন",
|
||||
"user.posts": "%1 এর পোস্ট সমুহ",
|
||||
"user.topics": "%1 এর টপিক সমুহ",
|
||||
"user.favourites": "%1'র প্রিয় পোস্টগুলো",
|
||||
"user.settings": "সদস্য সেটিংস",
|
||||
"maintenance.text": "%1 is currently undergoing maintenance. Please come back another time.",
|
||||
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
|
||||
}
|
||||
18
public/language/bn/recent.json
Normal file
18
public/language/bn/recent.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"title": "সাম্প্রতিক",
|
||||
"day": "দিন",
|
||||
"week": "সপ্তাহ",
|
||||
"month": "মাস",
|
||||
"year": "বছর",
|
||||
"alltime": "সবসময় ",
|
||||
"no_recent_topics": "কোন সাম্প্রতিক টপিক নেই। ",
|
||||
"there-is-a-new-topic": "There is a new topic.",
|
||||
"there-is-a-new-topic-and-a-new-post": "There is a new topic and a new post.",
|
||||
"there-is-a-new-topic-and-new-posts": "There is a new topic and %1 new posts.",
|
||||
"there-are-new-topics": "There are %1 new topics.",
|
||||
"there-are-new-topics-and-a-new-post": "There are %1 new topics and a new post.",
|
||||
"there-are-new-topics-and-new-posts": "There are %1 new topics and %2 new posts.",
|
||||
"there-is-a-new-post": "There is a new post.",
|
||||
"there-are-new-posts": "There are %1 new posts.",
|
||||
"click-here-to-reload": "Click here to reload."
|
||||
}
|
||||
18
public/language/bn/register.json
Normal file
18
public/language/bn/register.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"register": "নিবন্ধন",
|
||||
"help.email": "ডিফল্টভাবে, আপনার ইমেইল সর্বসাধারণ থেকে লুকানো থাকবে।",
|
||||
"help.username_restrictions": "%1 এবং %2 অক্ষরের মাঝে একটি অনন্য সদস্য নাম। বাকিরা আপনাকে @<span id='yourUsername'>নাম</span> দিয়ে উল্লেখ করতে পারবেন।",
|
||||
"help.minimum_password_length": "আপনার পাসওয়ার্ড এর দৈর্ঘ্য অন্তত %1 অক্ষরের হতে হবে।",
|
||||
"email_address": "ইমেইল অ্যাড্রেস",
|
||||
"email_address_placeholder": "ইমেইল অ্যাড্রেস লিখুন",
|
||||
"username": "ইউজারনেম",
|
||||
"username_placeholder": "ইউজারনেম লিখুন",
|
||||
"password": "পাসওয়ার্ড",
|
||||
"password_placeholder": "পাসওয়ার্ড লিখুন",
|
||||
"confirm_password": "পাসওয়ার্ড নিশ্চিত করুন",
|
||||
"confirm_password_placeholder": "পাসওয়ার্ড নিশ্চিত করুন",
|
||||
"register_now_button": "নিবন্ধন করুন",
|
||||
"alternative_registration": "বিকল্প নিবন্ধন",
|
||||
"terms_of_use": "নিয়মাবলী",
|
||||
"agree_to_terms_of_use": "আমি নিয়মাবলী মেনে চলতে সম্মতি জানালাম"
|
||||
}
|
||||
14
public/language/bn/reset_password.json
Normal file
14
public/language/bn/reset_password.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"reset_password": "পাসওয়ার্ড রিসেট",
|
||||
"update_password": "পাসওয়ার্ড হালনাগাদ",
|
||||
"password_changed.title": "পাসওয়ার্ড পরিবর্তন করা হয়েছে",
|
||||
"password_changed.message": "<p>পাসওয়ার্ড সফলভাবে রিসেট করা হয়েছে, পুনরায় <a href=\"/login\">প্রবেশ<a> করুন।",
|
||||
"wrong_reset_code.title": "ভুল রিসেট কোড",
|
||||
"wrong_reset_code.message": "প্রাপ্ত রিসেট কোডটি ভুল ছিল। আবার চেষ্টা করুন, অথবা <a href=\"/reset\">একটি নতুন রিসেট কোড</a> অনুরোধ করুন।",
|
||||
"new_password": "নতুন পাসওয়ার্ড",
|
||||
"repeat_password": "পাসওয়ার্ড নিশ্চিত করুন",
|
||||
"enter_email": "অনুগ্রহপূর্বক আপনার ইমেইল এড্রেস প্রদান করুন, আমরা আপনাকে আপনার পাসওয়ার্ড রিসেট সম্পর্কিত তথ্যাবলী ইমেইলে পাঠিয়ে দিবো। ",
|
||||
"enter_email_address": "আপনার ইমেইল এড্রেস",
|
||||
"password_reset_sent": "পাসওয়ার্ড রিসেট মেইল পাঠানো হয়েছে",
|
||||
"invalid_email": "ভুল ইমেইল / ইমেইল ডেটাবেইজে নেই"
|
||||
}
|
||||
7
public/language/bn/search.json
Normal file
7
public/language/bn/search.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"results_matching": "\"%2\" এর সাথে মিলিয়ে %1 ফলাফল পাওয়া গেছে, ( %3 seconds সময় লেগেছে )",
|
||||
"no-matches": "No matches found",
|
||||
"in": "In",
|
||||
"by": "By",
|
||||
"posted-by": "Posted by"
|
||||
}
|
||||
6
public/language/bn/success.json
Normal file
6
public/language/bn/success.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"success": "সফল হয়েছে",
|
||||
"topic-post": "আপনি সফলভাবে পোষ্ট করেছেন। ",
|
||||
"authentication-successful": "অথেন্টিকেশন সফল হয়েছে",
|
||||
"settings-saved": "সেটিংস সেভ করা হয়েছে। "
|
||||
}
|
||||
7
public/language/bn/tags.json
Normal file
7
public/language/bn/tags.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"no_tag_topics": "এই ট্যাগ সম্বলিত কোন টপিক নেই",
|
||||
"tags": "ট্যাগসমূহ",
|
||||
"enter_tags_here": "এখানে আপনার ট্যাগ টাইপ করুন, প্রত্যেকটি ট্যাগের পর Enter চাপুন",
|
||||
"enter_tags_here_short": "ট্যাগ বসান",
|
||||
"no_tags": "এখন পর্যন্ত কোন ট্যাগ নেই"
|
||||
}
|
||||
98
public/language/bn/topic.json
Normal file
98
public/language/bn/topic.json
Normal file
@@ -0,0 +1,98 @@
|
||||
{
|
||||
"topic": "টপিক",
|
||||
"topic_id": "টপিক নাম্বার ",
|
||||
"topic_id_placeholder": "টপিক নাম্বার দিন ",
|
||||
"no_topics_found": "কোন টপিক পাওয়া যায়নি!",
|
||||
"no_posts_found": "কোন পোস্ট পাওয়া যায়নি",
|
||||
"post_is_deleted": "এই পোস্টটি মুছে ফেলা হয়েছে!",
|
||||
"profile": "প্রোফাইল ",
|
||||
"posted_by": "পোস্ট করেছেন %1",
|
||||
"posted_by_guest": "অতিথি পোস্ট ",
|
||||
"chat": "আলাপচারি",
|
||||
"notify_me": "এই টপিকে নতুন উত্তর আসলে জানুন",
|
||||
"quote": "উদ্ধৃতি",
|
||||
"reply": "উত্তর",
|
||||
"edit": "সম্পাদণা",
|
||||
"delete": "মুছে ফেলুন",
|
||||
"purge": "পার্জ",
|
||||
"restore": "পুনরূদ্ধার",
|
||||
"move": "সরানো",
|
||||
"fork": "শাখা",
|
||||
"link": "লিঙ্ক",
|
||||
"share": "শেয়ার",
|
||||
"tools": "টুলস",
|
||||
"flag": "ফ্ল্যাগ",
|
||||
"locked": "বন্ধ",
|
||||
"bookmark_instructions": "আপনার সর্বশেষ অবস্থানে ফিরে যাবার জন্য এখানে ক্লিক করুন অথবা অগ্রাহ্য করতে চাইলে বন্ধ করুন",
|
||||
"flag_title": "মডারেশনের জন্য এই পোস্টটি ফ্ল্যাগ করুন",
|
||||
"flag_confirm": "আপনি কি নিশ্চিত যে এই পোস্টটিকে আপনি ফ্ল্যাগ করতে চান? ",
|
||||
"flag_success": "এই পোস্টটি মডারেশনের জন্য ফ্ল্যাগ করা হয়েছে।",
|
||||
"deleted_message": "এই টপিকটি মুছে ফেলা হয়েছে। শুধুমাত্র টপিক ব্যবস্থাপনার ক্ষমতাপ্রাপ্ত সদস্যগণ এটি দেখতে পারবেন।",
|
||||
"following_topic.message": "এখন থেকে এই টপিকে অন্যকেউ পোস্ট করলে আপনি নোটিফিকেশন পাবেন।",
|
||||
"not_following_topic.message": "এই টপিক থেকে আপনি আর নোটিফিকেশন পাবেন না।",
|
||||
"login_to_subscribe": "এই টপিকে সাবস্ক্রাইব করতে চাইলে অনুগ্রহ করে নিবন্ধণ করুন অথবা প্রবেশ করুন।",
|
||||
"markAsUnreadForAll.success": "টপিকটি সবার জন্য অপঠিত হিসাবে মার্ক করুন।",
|
||||
"watch": "দেখা",
|
||||
"unwatch": "অদেখা",
|
||||
"watch.title": "এই টপিকে নতুন উত্তর এলে বিজ্ঞাপণের মাধ্যমে জানুন।",
|
||||
"unwatch.title": "এই টপিক দেখা বন্ধ করুন",
|
||||
"share_this_post": "এই পোষ্টটি শেয়ার করুন",
|
||||
"thread_tools.title": "টপিক সম্পর্কিত টুলস",
|
||||
"thread_tools.markAsUnreadForAll": "\"অপঠিত\" হিসেবে চিহ্নিত করুন",
|
||||
"thread_tools.pin": "টপিক পিন করুন",
|
||||
"thread_tools.unpin": "টপিক আনপিন করুন",
|
||||
"thread_tools.lock": "টপিক বন্ধ করুন",
|
||||
"thread_tools.unlock": "টপিক খুলে দিন",
|
||||
"thread_tools.move": "টপিক সরান",
|
||||
"thread_tools.move_all": "সমস্ত টপিক সরান",
|
||||
"thread_tools.fork": "টপিক ফর্ক করুন",
|
||||
"thread_tools.delete": "টপিক মুছে ফেলুন",
|
||||
"thread_tools.delete_confirm": "আপনি নিশ্চিত যে আপনি এই টপিকটি মুছে ফেলতে চান?",
|
||||
"thread_tools.restore": "টপিক পুনরূদ্ধার করুন",
|
||||
"thread_tools.restore_confirm": "আপনি নিশ্চিত যে আপনি টপিকটি পুনরূদ্ধার করতে চান?",
|
||||
"thread_tools.purge": "টপিক পার্জ করুন",
|
||||
"thread_tools.purge_confirm": "আপনি নিশ্চিত যে আপনি টপিকটি পার্জ করতে চাচ্ছেন ? ",
|
||||
"topic_move_success": "টপিকটি %1 এ সরিয়ে নেয়া হয়েছে",
|
||||
"post_delete_confirm": "আপনি নিশ্চিত যে আপনি এই পোষ্টটি মুছে ফেলতে চান ?",
|
||||
"post_restore_confirm": "আপনি নিশ্চিত যে আপনি এই পোষ্টটি পুনরূূদ্ধার করতে চান ? ",
|
||||
"post_purge_confirm": "আপনি নিশ্চিত যে আপনি এই পোষ্টটি পার্জ করতে চান ? ",
|
||||
"load_categories": "ক্যাটাগরী লোড করা হচ্ছে",
|
||||
"disabled_categories_note": "নিস্ক্রীয় ক্যাটাগরীসমূহ ধূসর কালিতে লেখা রয়েছে। ",
|
||||
"confirm_move": "সরান",
|
||||
"confirm_fork": "ফর্ক",
|
||||
"favourite": "পছন্দ",
|
||||
"favourites": "পছন্দতালিকা",
|
||||
"favourites.has_no_favourites": "আপনার যদি কোন পছন্দের পোষ্ট না থেকে থাকে তাহলে কিছু পোষ্ট ফেভারিট করা হলে সেগুলো এখানে দেখতে পাবেন।",
|
||||
"loading_more_posts": "আরো পোষ্ট লোড করা হচ্ছে",
|
||||
"move_topic": "টপিক সরান",
|
||||
"move_topics": "টপিক সমূহ সরান",
|
||||
"move_post": "পোষ্ট সরান",
|
||||
"post_moved": "পোষ্ট সরানো হয়েছে",
|
||||
"fork_topic": "টপিক ফর্ক করুন",
|
||||
"topic_will_be_moved_to": "এই টপিকটি ক্যাটাগরীতে সরানো হবে",
|
||||
"fork_topic_instruction": "যে পোষ্টটি ফর্ক করতে চান সেটি ক্লিক করুন",
|
||||
"fork_no_pids": "কোন পোষ্ট সিলেক্ট করা হয় নি",
|
||||
"fork_success": "টপিক ফর্ক করা হয়েছে। ফর্ক করা টপিকে যেতে এখানে ক্লিক করুন",
|
||||
"composer.title_placeholder": "আপনার টপিকের শিরোনাম দিন",
|
||||
"composer.handle_placeholder": "Name",
|
||||
"composer.discard": "বাতিল",
|
||||
"composer.submit": "সাবমিট",
|
||||
"composer.replying_to": "%1 এর উত্তরে:",
|
||||
"composer.new_topic": "নতুন টপিক",
|
||||
"composer.uploading": "আপলোডিং",
|
||||
"composer.thumb_url_label": "টপিকে থাম্বনেইল URL পেষ্ট করুন",
|
||||
"composer.thumb_title": "এই টপিকে থাম্বনেইল যোগ করুন",
|
||||
"composer.thumb_url_placeholder": "http://example.com/thumb.png",
|
||||
"composer.thumb_file_label": "অথবা একটি ফাইল আপলোড করুন",
|
||||
"composer.thumb_remove": "ফিল্ড ক্লিয়ার করুন",
|
||||
"composer.drag_and_drop_images": "ছবি এখানে ড্র্যাগ করে এনে ছেড়ে দিন",
|
||||
"more_users_and_guests": "%1 more user(s) and %2 guest(s)",
|
||||
"more_users": "%1 more user(s)",
|
||||
"more_guests": "%1 more guest(s)",
|
||||
"users_and_others": "%1 and %2 others",
|
||||
"sort_by": "সাজানোর ভিত্তি:",
|
||||
"oldest_to_newest": "পুরাতন থেকে নতুন",
|
||||
"newest_to_oldest": "নতুন থেকে পুরাতন",
|
||||
"most_votes": "সর্বোচ্চ ভোট",
|
||||
"most_posts": "Most posts"
|
||||
}
|
||||
9
public/language/bn/unread.json
Normal file
9
public/language/bn/unread.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"title": "অপঠিত",
|
||||
"no_unread_topics": "কোন অপঠিত টপিক নেই",
|
||||
"load_more": "আরো লোড করুন",
|
||||
"mark_as_read": "পঠিত হিসেবে চিহ্নিত করুন",
|
||||
"selected": "নির্বাচিত",
|
||||
"all": "সবগুলো",
|
||||
"topics_marked_as_read.success": "পঠিত হিসেবে চিহ্নিত টপিকসমূহ"
|
||||
}
|
||||
80
public/language/bn/user.json
Normal file
80
public/language/bn/user.json
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"banned": "নিষিদ্ধ",
|
||||
"offline": "অফলাইন",
|
||||
"username": "সদস্যের নাম",
|
||||
"joindate": "Join Date",
|
||||
"postcount": "Post Count",
|
||||
"email": "ইমেইল",
|
||||
"confirm_email": "ইমেইল নিশ্চিত করুন",
|
||||
"delete_account": "একাউন্ট মুছে ফেলুন",
|
||||
"delete_account_confirm": "আপনি কি নিশ্চিত যে আপনি আপনার একাউন্ট মুছে ফেলতে চান ? <br /><strong>এই কাজটির ফলে আপনার কোন তথ্য পুনরূদ্ধার করা সম্ভব নয় </strong><br /><br /> নিশ্চিত করতে আপনার ইউজারনেম প্রবেশ করান। ",
|
||||
"fullname": "পুর্ণ নাম",
|
||||
"website": "ওয়েবসাইট",
|
||||
"location": "স্থান",
|
||||
"age": "বয়স",
|
||||
"joined": "যোগদান করেছেন",
|
||||
"lastonline": "সর্বশেষ অনলাইনে ছিলেন",
|
||||
"profile": "প্রোফাইল",
|
||||
"profile_views": "প্রোফাইল দেখেছেন",
|
||||
"reputation": "সন্মাননা",
|
||||
"favourites": "পছন্দের তালিকা",
|
||||
"watched": "Watched",
|
||||
"followers": "যাদের অনুসরণ করছেন",
|
||||
"following": "যারা আপনাকে অনুসরণ করছে",
|
||||
"signature": "স্বাক্ষর",
|
||||
"gravatar": "গ্রাভাতার",
|
||||
"birthday": "জন্মদিন",
|
||||
"chat": "বার্তালাপ",
|
||||
"follow": "অনুসরন করুন",
|
||||
"unfollow": "অনুসরন করা থেকে বিরত থাকুন",
|
||||
"profile_update_success": "প্রোফাইল আপডেট সফল হয়েছে",
|
||||
"change_picture": "ছবি পরিবর্তন",
|
||||
"edit": "সম্পাদনা",
|
||||
"uploaded_picture": "ছবি আপলোড করুন",
|
||||
"upload_new_picture": "নতুন ছবি আপলোড করুন",
|
||||
"upload_new_picture_from_url": "URL থেকে নতুন ছবি আপলোড করুন",
|
||||
"current_password": "বর্তমান পাসওয়ার্ড",
|
||||
"change_password": "পাসওয়ার্ড পরিবর্তন",
|
||||
"change_password_error": "অগ্রহনযোগ্য পাসওয়ার্ড",
|
||||
"change_password_error_wrong_current": "আপনার পাসওয়ার্ড সঠিক নয়",
|
||||
"change_password_error_length": "পাসওয়ার্ড অতিরিক্ত ছোট",
|
||||
"change_password_error_match": "পাসওয়ার্ড অবশ্যই একই হতে হবে",
|
||||
"change_password_error_privileges": "আপনার পাসওয়ার্ড পরিবর্তন করার অনুমতি নেই",
|
||||
"change_password_success": "আপনার পাসওয়ার্ড আপডেট করা হয়েছে",
|
||||
"confirm_password": "পাসওয়ার্ড নিশ্চিত করুন",
|
||||
"password": "পাসওয়ার্ড",
|
||||
"username_taken_workaround": "আপনি যে ইউজারনেম চাচ্ছিলেন সেটি ইতিমধ্যে নেয়া হয়ে গেছে, কাজেই আমরা এটি কিঞ্চিং পরিবর্তন করেছি। আপনি এখন <strong>%1</strong> হিসেবে পরিচিত",
|
||||
"upload_picture": "ছবি আপলোড করুন",
|
||||
"upload_a_picture": "ছবি (একটি) আপলোড করুন",
|
||||
"image_spec": "আপনি কেবলমাত্র PNG, JPG অথবা GIF ফাইল আপলোড করতে পারবেন",
|
||||
"max": "সর্বোচ্চ",
|
||||
"settings": "সেটিংস",
|
||||
"show_email": "আমার ইমেইল দেখাও",
|
||||
"show_fullname": "আমার সম্পূর্ণ নাম দেখাও",
|
||||
"restrict_chats": "আমি যাদের ফলো করি কেবলমাত্র তাদের থেকে বার্তা গ্রহন করা হোক",
|
||||
"digest_label": "ডাইজেষ্টে সাবস্ক্রাইব করুন",
|
||||
"digest_description": "শিডিউল অনূযায়ী এই ফোরামের ইমেইল আপডেটের জন্য সাবস্ক্রাইব করুন (নতুন নোটিফিকেশন এবং টপিকসমূহ )",
|
||||
"digest_off": "বন্ধ",
|
||||
"digest_daily": "দৈনিক",
|
||||
"digest_weekly": "সাপ্তাহিক",
|
||||
"digest_monthly": "মাসিক",
|
||||
"send_chat_notifications": "যদি আমি অনলাইনে না থাকি, সেক্ষেত্রে নতুন চ্যাট মেসেজ আসলে আমাকে ইমেইল করুন",
|
||||
"send_post_notifications": "Send an email when replies are made to topics I am subscribed to",
|
||||
"has_no_follower": "এই সদস্যের কোন ফলোয়ার নেই :(",
|
||||
"follows_no_one": "এই সদস্য কাউকে ফলো করছেন না :(",
|
||||
"has_no_posts": "এই সদস্য এখনো কোন পোষ্ট করেন নি",
|
||||
"has_no_topics": "এই সদস্য এখনো কোন টপিক পোষ্ট করেন নি",
|
||||
"has_no_watched_topics": "This user didn't watch any topics yet.",
|
||||
"email_hidden": "ইমেইল গোপন রাখা হয়েছে",
|
||||
"hidden": "গোপন করা হয়েছে",
|
||||
"paginate_description": "ইনফাইনাইট স্ক্রলের বদলে টপিক এবং পোষ্টের জন্য পেজিনেশন ব্যাবহার করুন",
|
||||
"topics_per_page": "প্রতি পেজে কতগুলো টপিক থাকবে",
|
||||
"posts_per_page": "প্রতি পেইজে কতগুলো পোষ্ট থাকবে",
|
||||
"notification_sounds": "নতুন নোটিফিকেশনের জন্য নোটিফিকেশন সাউন্ড বাজাও।",
|
||||
"browsing": "Browsing সেটিংস",
|
||||
"open_links_in_new_tab": "বাইরের URL গুলো নতুন ট্যাবে খোলা হবে ?",
|
||||
"enable_topic_searching": "In-Topic সার্চ সক্রীয় করো",
|
||||
"topic_search_help": "যদি এনাবল করা হয়ে থাকে, In-topic সার্চিং ব্রাউজারের ডিফল্ট সার্চের বদলে পুরো টপিকজুড়ে সার্চ করার সুবিধা দিবে, যা কেবলমাত্র বর্তমান স্কৃণে দেখানো অংশের মধ্যে সীমাবদ্ধ থাকবে না। ",
|
||||
"follow_topics_you_reply_to": "আপনার উত্তর দেয়া টপিকগুলো ফলো করুন",
|
||||
"follow_topics_you_create": "আপনার তৈরীকরা টপিকসমূহ ফলো করুন"
|
||||
}
|
||||
12
public/language/bn/users.json
Normal file
12
public/language/bn/users.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"latest_users": "সর্বশেষ নিবন্ধিত সদস্যরা:",
|
||||
"top_posters": "সর্বোচ্চ পোষ্টকারী",
|
||||
"most_reputation": "সর্বোচ্চ সম্মাননাধারী",
|
||||
"search": "খুঁজুন",
|
||||
"enter_username": "ইউজারনেম এর ভিত্তিতে সার্চ করুন",
|
||||
"load_more": "আরো লোড করুন",
|
||||
"users-found-search-took": "%1 সদস্য(দের) খুঁজে পাওয়া গিয়েছে! সময় লেগেছে %2 ms.",
|
||||
"filter-by": "Filter By",
|
||||
"online-only": "Online only",
|
||||
"picture-only": "Picture only"
|
||||
}
|
||||
@@ -4,5 +4,5 @@
|
||||
"browsing": "prohlíží",
|
||||
"no_replies": "Nikdo ještě neodpověděl",
|
||||
"share_this_category": "Share this category",
|
||||
"ignore": "Ignore"
|
||||
"ignore": "Ignorovat"
|
||||
}
|
||||
@@ -1,23 +1,25 @@
|
||||
{
|
||||
"password-reset-requested": "Password Reset Requested - %1!",
|
||||
"welcome-to": "Welcome to %1",
|
||||
"greeting_no_name": "Hello",
|
||||
"greeting_with_name": "Hello %1",
|
||||
"welcome.text1": "Thank you for registering with %1!",
|
||||
"welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.",
|
||||
"welcome.cta": "Click here to confirm your email address",
|
||||
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
|
||||
"reset.text2": "To continue with the password reset, please click on the following link:",
|
||||
"reset.cta": "Click here to reset your password",
|
||||
"digest.notifications": "You have unread notifications from %1:",
|
||||
"digest.latest_topics": "Latest topics from %1",
|
||||
"digest.cta": "Click here to visit %1",
|
||||
"digest.unsub.info": "This digest was sent to you due to your subscription settings.",
|
||||
"digest.daily.no_topics": "There have been no active topics in the past day",
|
||||
"notif.chat.subject": "New chat message received from %1",
|
||||
"notif.chat.cta": "Click here to continue the conversation",
|
||||
"notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.",
|
||||
"unsub.cta": "Click here to alter those settings",
|
||||
"closing": "Thanks!"
|
||||
"password-reset-requested": "Požadována obnova hesla - %1!",
|
||||
"welcome-to": "Vítejte v %1",
|
||||
"greeting_no_name": "Dobrý den",
|
||||
"greeting_with_name": "Dobrý den %1",
|
||||
"welcome.text1": "Děkujeme vám za registraci s %1!",
|
||||
"welcome.text2": "Pro úplnou aktivaci vašeho účtu potřebujeme ověřit vaší emailovou adresu.",
|
||||
"welcome.cta": "Klikněte zde pro potvrzení vaší emailové adresy",
|
||||
"reset.text1": "Obdrželi jsme požadavek na obnovu hesla, pravděpodobně kvůli tomu, že jste ho zapomněli. Pokud to není tento případ, ignorujte, prosím, tento email.",
|
||||
"reset.text2": "Přejete-li si pokračovat v obnově vašeho hesla, klikněte, prosím, na následující odkaz:",
|
||||
"reset.cta": "Klikněte zde, chcete-li obnovit vaše heslo",
|
||||
"digest.notifications": "Máte tu nepřečtená oznámení od %1:",
|
||||
"digest.latest_topics": "Nejnovější témata od %1",
|
||||
"digest.cta": "Kliknutím zde navštívíte %1",
|
||||
"digest.unsub.info": "Tento výtah vám byl odeslán, protože jste si to nastavili ve vašich odběrech.",
|
||||
"digest.no_topics": "Dosud tu nebyly žádné aktivní témata %1",
|
||||
"notif.chat.subject": "Nová zpráva z chatu od %1",
|
||||
"notif.chat.cta": "Chcete-li pokračovat v konverzaci, klikněte zde.",
|
||||
"notif.chat.unsub.info": "Toto oznámení z chatu vám bylo zasláno, protože jste si to nastavili ve vašich odběrech.",
|
||||
"notif.post.cta": "Click here to read the full topic",
|
||||
"notif.post.unsub.info": "This post notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "Tento testovací email slouží k ověření, že mailer je správně nastaven. NodeBB.",
|
||||
"unsub.cta": "Chcete-li změnit tyto nastavení, klikněte zde.",
|
||||
"closing": "Díky!"
|
||||
}
|
||||
@@ -1,64 +1,73 @@
|
||||
{
|
||||
"invalid-data": "Invalid Data",
|
||||
"not-logged-in": "You don't seem to be logged in.",
|
||||
"account-locked": "Your account has been locked temporarily",
|
||||
"search-requires-login": "Searching requires an account! Please login or register!",
|
||||
"invalid-cid": "Invalid Category ID",
|
||||
"invalid-tid": "Invalid Topic ID",
|
||||
"invalid-pid": "Invalid Post ID",
|
||||
"invalid-uid": "Invalid User ID",
|
||||
"invalid-username": "Invalid Username",
|
||||
"invalid-email": "Invalid Email",
|
||||
"invalid-title": "Invalid title!",
|
||||
"invalid-user-data": "Invalid User Data",
|
||||
"invalid-password": "Invalid Password",
|
||||
"invalid-username-or-password": "Please specify both a username and password",
|
||||
"invalid-search-term": "Invalid search term",
|
||||
"invalid-pagination-value": "Invalid pagination value",
|
||||
"username-taken": "Username taken",
|
||||
"email-taken": "Email taken",
|
||||
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
|
||||
"username-too-short": "Username too short",
|
||||
"username-too-long": "Username too long",
|
||||
"user-banned": "User banned",
|
||||
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
|
||||
"no-category": "Category does not exist",
|
||||
"no-topic": "Topic does not exist",
|
||||
"no-post": "Post does not exist",
|
||||
"no-group": "Group does not exist",
|
||||
"no-user": "User does not exist",
|
||||
"invalid-data": "Neplatná data",
|
||||
"not-logged-in": "Zdá se, že nejste přihlášen(a)",
|
||||
"account-locked": "Váš účet byl dočasně uzamčen",
|
||||
"search-requires-login": "Chcete-li vyhledávat, musíte mít účet. Přihlašte se nebo zaregistrujte, prosím.",
|
||||
"invalid-cid": "Neplatné ID kategorie",
|
||||
"invalid-tid": "Neplatné ID tématu",
|
||||
"invalid-pid": "Neplatné ID příspěvku",
|
||||
"invalid-uid": "Neplatné ID uživatele",
|
||||
"invalid-username": "Neplatné uživatelské jméno",
|
||||
"invalid-email": "Neplatný email",
|
||||
"invalid-title": "Neplatný titulek!",
|
||||
"invalid-user-data": "Neplatná uživatelská data",
|
||||
"invalid-password": "Neplatné heslo",
|
||||
"invalid-username-or-password": "Stanovte, prosím, oboje, jak uživatelské jméno, tak heslo",
|
||||
"invalid-search-term": "Neplatný výraz pro vyhledávání",
|
||||
"invalid-pagination-value": "Neplatná hodnota pro stránkování",
|
||||
"username-taken": "Uživatelské jméno je již použito",
|
||||
"email-taken": "Email je již použit",
|
||||
"email-not-confirmed": "Vaše emailová adresa zatím nebyla potvrzena. Kliknutím zde svůj email potvrdíte.",
|
||||
"email-not-confirmed-chat": "You are unable to chat until your email is confirmed",
|
||||
"username-too-short": "Uživatelské jméno je příliš krátké",
|
||||
"username-too-long": "Uživatelské jméno je příliš dlouhé",
|
||||
"user-banned": "Uživatel byl zakázán",
|
||||
"user-too-new": "Pardon, ale je potřeba vyčkat %1 sekund, než-li budete moci vytvořit svůj první příspěvek.",
|
||||
"no-category": "Kategorie neexistuje",
|
||||
"no-topic": "Téma neexistuje",
|
||||
"no-post": "Příspěvek neexistuje",
|
||||
"no-group": "Skupina neexistuje",
|
||||
"no-user": "Uživatel neexistuje",
|
||||
"no-teaser": "Teaser does not exist",
|
||||
"no-privileges": "You do not have enough privileges for this action.",
|
||||
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
|
||||
"category-disabled": "Category disabled",
|
||||
"topic-locked": "Topic Locked",
|
||||
"still-uploading": "Please wait for uploads to complete.",
|
||||
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
|
||||
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
|
||||
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
|
||||
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
|
||||
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
|
||||
"cant-vote-self-post": "You cannot vote for your own post",
|
||||
"no-privileges": "Na tuto akci nemáte dostatečná práva",
|
||||
"no-emailers-configured": "Protože není zaveden žádný emailový plugin, není možné odeslat testovací email.",
|
||||
"category-disabled": "Kategorie zakázána",
|
||||
"topic-locked": "Téma uzamčeno",
|
||||
"still-uploading": "Vyčkejte, prosím, nežli se vše kompletně nahraje.",
|
||||
"content-too-short": "Vložte, prosím, delší příspěvek. Příspěvky by měly obsahovat nejméně %1 znaků.",
|
||||
"title-too-short": "Vložte, prosím, delší titulek. Titulky by měly obsahovat nejméně %1 znaků.",
|
||||
"title-too-long": "Vložte, prosím, kratší titulek. Titulky by neměly být delší, než-li %1 znaků.",
|
||||
"too-many-posts": "Své příspěvky můžete odesílat po %1 sekundách - vyčkejte, prosím, před dalším odesláním",
|
||||
"too-many-posts-newbie": "Jako nový uživatel můžete své příspěvky odesílat po %1 sekundách, dokud nedosáhnete %2 reputace - vyčkejte, prosím, před dalším odesláním",
|
||||
"file-too-big": "Maximální povolená velikost souboru je %1 kbs - nahrávejte, prosím, menší soubory",
|
||||
"cant-vote-self-post": "Nemůžete hlasovat pro svůj vlastní příspěvek",
|
||||
"already-favourited": "You have already favourited this post",
|
||||
"already-unfavourited": "You have already unfavourited this post",
|
||||
"cant-ban-other-admins": "You can't ban other admins!",
|
||||
"invalid-image-type": "Invalid image type",
|
||||
"group-name-too-short": "Group name too short",
|
||||
"group-already-exists": "Group already exists",
|
||||
"group-name-change-not-allowed": "Group name change not allowed",
|
||||
"post-already-deleted": "This post has already been deleted",
|
||||
"post-already-restored": "This post has already been restored",
|
||||
"topic-already-deleted": "This topic has already been deleted",
|
||||
"topic-already-restored": "This topic has already been restored",
|
||||
"cant-ban-other-admins": "Nemůžete zakazovat ostatní administrátory!",
|
||||
"invalid-image-type": "Invalid image type. Allowed types are: %1",
|
||||
"invalid-image-extension": "Invalid image extension",
|
||||
"group-name-too-short": "Název skupiny je příliš krátký",
|
||||
"group-already-exists": "Skupina už exstuje",
|
||||
"group-name-change-not-allowed": "Změna názvu skupiny není povolena",
|
||||
"group-already-member": "You are already part of this group",
|
||||
"group-needs-owner": "This group requires at least one owner",
|
||||
"post-already-deleted": "Tento příspěvek byl již vymazán",
|
||||
"post-already-restored": "Tento příspěvek byl již obnoven",
|
||||
"topic-already-deleted": "Toto téma bylo již vymazáno",
|
||||
"topic-already-restored": "Toto téma bylo již obnoveno",
|
||||
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
|
||||
"invalid-file": "Invalid File",
|
||||
"uploads-are-disabled": "Uploads are disabled",
|
||||
"upload-error": "Upload Error : %1",
|
||||
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
|
||||
"cant-chat-with-yourself": "You can't chat with yourself!",
|
||||
"reputation-system-disabled": "Reputation system is disabled.",
|
||||
"invalid-file": "Neplatný soubor",
|
||||
"uploads-are-disabled": "Nahrávání je zakázáno",
|
||||
"upload-error": "Chyba při nahrávání : %1",
|
||||
"signature-too-long": "Pardon, ale váš podpis nemůže být delší, než-li %1 znaků.",
|
||||
"cant-chat-with-yourself": "Nemůžete chatovat sami se sebou!",
|
||||
"chat-restricted": "This user has restricted their chat messages. They must follow you before you can chat with them",
|
||||
"too-many-messages": "You have sent too many messages, please wait awhile.",
|
||||
"reputation-system-disabled": "Systém reputací je zakázán.",
|
||||
"downvoting-disabled": "Downvoting is disabled",
|
||||
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
|
||||
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
|
||||
"reload-failed": "NodeBB encountered a problem while reloading: \"%1\". NodeBB will continue to serve the existing client-side assets, although you should undo what you did just prior to reloading."
|
||||
"reload-failed": "NodeBB encountered a problem while reloading: \"%1\". NodeBB will continue to serve the existing client-side assets, although you should undo what you did just prior to reloading.",
|
||||
"registration-error": "Chyba při registraci",
|
||||
"parse-error": "Something went wrong while parsing server response"
|
||||
}
|
||||
@@ -3,31 +3,33 @@
|
||||
"search": "Hledat",
|
||||
"buttons.close": "Zavřít",
|
||||
"403.title": "Přístup odepřen",
|
||||
"403.message": "K této stránce nemáte přístup. Zkuste se <a href='/login'>přihlásit</a>?",
|
||||
"403.message": "You seem to have stumbled upon a page that you do not have access to.",
|
||||
"403.login": "Perhaps you should <a href='%1/login'>try logging in</a>?",
|
||||
"404.title": "Stránka nenalezena",
|
||||
"404.message": "Tato stránka bohužel neexistuje. Vraťte se na <a href='/'>domovskou stránku</a>.",
|
||||
"404.message": "You seem to have stumbled upon a page that does not exist. Return to the <a href='%1/'>home page</a>.",
|
||||
"500.title": "Neznámá chyba",
|
||||
"500.message": "Jejda, vypadá to, že se něco pokazilo.",
|
||||
"register": "Registrovat",
|
||||
"login": "Přihlásit se",
|
||||
"please_log_in": "Please Log In",
|
||||
"please_log_in": "Přihlašte se, prosím",
|
||||
"logout": "Odhlásit se",
|
||||
"posting_restriction_info": "Posting is currently restricted to registered members only, click here to log in.",
|
||||
"welcome_back": "Welcome Back",
|
||||
"you_have_successfully_logged_in": "You have successfully logged in",
|
||||
"posting_restriction_info": "V současné době je zasílání příspěvků povoleno pouze registrovaným členům, klikněte zde a přihlašte se.",
|
||||
"welcome_back": "Vítejte zpět",
|
||||
"you_have_successfully_logged_in": "Vaše přihlášení proběhlo úspěšně",
|
||||
"save_changes": "Uložit změny",
|
||||
"close": "Zrušit",
|
||||
"pagination": "Pagination",
|
||||
"pagination.out_of": "%1 out of %2",
|
||||
"pagination": "Stránkování",
|
||||
"pagination.out_of": "%1 z %2",
|
||||
"pagination.enter_index": "Enter index",
|
||||
"header.admin": "Administrace",
|
||||
"header.recent": "Aktuality",
|
||||
"header.unread": "Nepřečtené",
|
||||
"header.tags": "Tags",
|
||||
"header.tags": "Tagy",
|
||||
"header.popular": "Populární",
|
||||
"header.users": "Uživatelé",
|
||||
"header.groups": "Groups",
|
||||
"header.chats": "Chats",
|
||||
"header.notifications": "Notifications",
|
||||
"header.notifications": "Oznámení",
|
||||
"header.search": "Hledat",
|
||||
"header.profile": "Můj profil",
|
||||
"notifications.loading": "Načítání upozornění",
|
||||
@@ -36,14 +38,14 @@
|
||||
"previouspage": "Předchozí stránka",
|
||||
"nextpage": "Další stránka",
|
||||
"alert.success": "Success",
|
||||
"alert.error": "Error",
|
||||
"alert.error": "Chyba",
|
||||
"alert.banned": "Banned",
|
||||
"alert.banned.message": "You have just been banned, you will now be logged out.",
|
||||
"alert.unfollow": "You are no longer following %1!",
|
||||
"alert.follow": "You are now following %1!",
|
||||
"online": "Online",
|
||||
"users": "Users",
|
||||
"topics": "Topics",
|
||||
"users": "Uživatelé",
|
||||
"topics": "Témata",
|
||||
"posts": "Příspěvky",
|
||||
"views": "Zobrazení",
|
||||
"reputation": "Reputation",
|
||||
@@ -58,8 +60,8 @@
|
||||
"user_posted_ago": "%1 posted %2",
|
||||
"guest_posted_ago": "Guest posted %1",
|
||||
"last_edited_by_ago": "last edited by %1 %2",
|
||||
"norecentposts": "No Recent Posts",
|
||||
"norecenttopics": "No Recent Topics",
|
||||
"norecentposts": "Žádné nedávné příspěvky",
|
||||
"norecenttopics": "Žádné nedávné témata",
|
||||
"recentposts": "Nedávné příspěvky",
|
||||
"recentips": "Recently Logged In IPs",
|
||||
"away": "Pryč",
|
||||
@@ -67,10 +69,13 @@
|
||||
"invisible": "Neviditelný",
|
||||
"offline": "Offline",
|
||||
"email": "Email",
|
||||
"language": "Language",
|
||||
"guest": "Guest",
|
||||
"guests": "Guests",
|
||||
"updated.title": "Forum Updated",
|
||||
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
|
||||
"privacy": "Privacy"
|
||||
"language": "Jazyk",
|
||||
"guest": "Host",
|
||||
"guests": "Hosté",
|
||||
"updated.title": "Fórum zaktualizováno",
|
||||
"updated.message": "Toto fórum bylo právě aktualizováno na poslední verzi. Klikněte zde a obnovte tuto stránku.",
|
||||
"privacy": "Privacy",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"delete_all": "Vymazat vše"
|
||||
}
|
||||
@@ -1,8 +1,21 @@
|
||||
{
|
||||
"groups": "Groups",
|
||||
"view_group": "View Group",
|
||||
"details.title": "Group Details",
|
||||
"details.members": "Member List",
|
||||
"details.has_no_posts": "This group's members have not made any posts.",
|
||||
"details.latest_posts": "Latest Posts"
|
||||
"groups": "Skupiny",
|
||||
"view_group": "Prohlédnout skupinu",
|
||||
"owner": "Group Owner",
|
||||
"new_group": "Create New Group",
|
||||
"no_groups_found": "There are no groups to see",
|
||||
"cover-instructions": "Drag and Drop a photo, drag to position, and hit <strong>Save</strong>",
|
||||
"cover-change": "Change",
|
||||
"cover-save": "Save",
|
||||
"cover-saving": "Saving",
|
||||
"details.title": "podrobnosti skupiny",
|
||||
"details.members": "Seznam členů",
|
||||
"details.pending": "Pending Members",
|
||||
"details.has_no_posts": "Členové této skupiny dosud neodeslali ani jeden příspěvek.",
|
||||
"details.latest_posts": "Nejnovější příspěvky",
|
||||
"details.private": "Private Group",
|
||||
"details.public": "Public Group",
|
||||
"details.owner_options": "Group Administration",
|
||||
"event.updated": "Group details have been updated",
|
||||
"event.deleted": "The group \"%1\" has been deleted"
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"username": "Username / Email",
|
||||
"username": "Uživatelské jméno / Email",
|
||||
"remember_me": "Zapamatovat si mě?",
|
||||
"forgot_password": "Zapomněli jste heslo?",
|
||||
"alternative_logins": "Další způsoby přihlášení",
|
||||
"failed_login_attempt": "Přihlášení se nezdařilo, zkuste to prosím znovu.",
|
||||
"login_successful": "Přihlášení proběhlo úspěšně!",
|
||||
"dont_have_account": "Don't have an account?"
|
||||
"dont_have_account": "Nemáte účet?"
|
||||
}
|
||||
@@ -1,21 +1,20 @@
|
||||
{
|
||||
"chat.chatting_with": "Chat s <span id=\"chat-with-name\"></span>",
|
||||
"chat.placeholder": "Type chat message here, press enter to send",
|
||||
"chat.placeholder": "Zprávu do chatu napište zde, pro odeslání stiskněte enter",
|
||||
"chat.send": "Odeslat",
|
||||
"chat.no_active": "Nemáte žádné aktivní konverzace.",
|
||||
"chat.user_typing": "%1 is typing ...",
|
||||
"chat.user_typing": "%1 píše ...",
|
||||
"chat.user_has_messaged_you": "%1 has messaged you.",
|
||||
"chat.see_all": "See all Chats",
|
||||
"chat.no-messages": "Please select a recipient to view chat message history",
|
||||
"chat.recent-chats": "Recent Chats",
|
||||
"chat.contacts": "Contacts",
|
||||
"chat.message-history": "Message History",
|
||||
"chat.contacts": "Kontakty",
|
||||
"chat.message-history": "Historie zpráv",
|
||||
"chat.pop-out": "Pop out chat",
|
||||
"chat.maximize": "Maximize",
|
||||
"chat.yesterday": "Yesterday",
|
||||
"chat.seven_days": "7 Days",
|
||||
"chat.thirty_days": "30 Days",
|
||||
"chat.three_months": "3 Months",
|
||||
"chat.maximize": "Maximalizovat",
|
||||
"chat.seven_days": "7 dní",
|
||||
"chat.thirty_days": "30 dní",
|
||||
"chat.three_months": "3 měsíce",
|
||||
"composer.user_said_in": "%1 said in %2:",
|
||||
"composer.user_said": "%1 said:",
|
||||
"composer.discard": "Are you sure you wish to discard this post?"
|
||||
|
||||
@@ -5,5 +5,14 @@
|
||||
"month": "Měsíc",
|
||||
"year": "Year",
|
||||
"alltime": "All Time",
|
||||
"no_recent_topics": "There are no recent topics."
|
||||
"no_recent_topics": "There are no recent topics.",
|
||||
"there-is-a-new-topic": "There is a new topic.",
|
||||
"there-is-a-new-topic-and-a-new-post": "There is a new topic and a new post.",
|
||||
"there-is-a-new-topic-and-new-posts": "There is a new topic and %1 new posts.",
|
||||
"there-are-new-topics": "There are %1 new topics.",
|
||||
"there-are-new-topics-and-a-new-post": "There are %1 new topics and a new post.",
|
||||
"there-are-new-topics-and-new-posts": "There are %1 new topics and %2 new posts.",
|
||||
"there-is-a-new-post": "There is a new post.",
|
||||
"there-are-new-posts": "There are %1 new posts.",
|
||||
"click-here-to-reload": "Click here to reload."
|
||||
}
|
||||
@@ -8,7 +8,7 @@
|
||||
"new_password": "Nové heslo",
|
||||
"repeat_password": "Potvrzení hesla",
|
||||
"enter_email": "Zadejte svou <strong>emailovou adresu</strong> a my Vám pošleme informace, jak můžete obnovit své heslo.",
|
||||
"enter_email_address": "Enter Email Address",
|
||||
"enter_email_address": "Zadejte emailovou adresu",
|
||||
"password_reset_sent": "Obnova hesla odeslána",
|
||||
"invalid_email": "Špatný email / Email neexistuje!"
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
{
|
||||
"results_matching": "%1 result(s) matching \"%2\", (%3 seconds)",
|
||||
"no-matches": "No posts found"
|
||||
"no-matches": "No matches found",
|
||||
"in": "In",
|
||||
"by": "By",
|
||||
"posted-by": "Posted by"
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"no_tag_topics": "There are no topics with this tag.",
|
||||
"tags": "Tags",
|
||||
"enter_tags_here": "Enter tags here. Press enter after each tag.",
|
||||
"enter_tags_here_short": "Enter tags...",
|
||||
"no_tags": "There are no tags yet."
|
||||
"no_tag_topics": "Není zde žádné téma s tímto tagem.",
|
||||
"tags": "Tagy",
|
||||
"enter_tags_here": "Zde vložte tagy. Po každém vložení tagu zmáčkněte enter.",
|
||||
"enter_tags_here_short": "Vložte tagy ...",
|
||||
"no_tags": "Zatím tu není žádný tag."
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"topic": "Téma",
|
||||
"topic_id": "Topic ID",
|
||||
"topic_id_placeholder": "Enter topic ID",
|
||||
"topic_id": "ID tématu",
|
||||
"topic_id_placeholder": "Vložte ID tématu",
|
||||
"no_topics_found": "Nebyla nalezena žádná témata!",
|
||||
"no_posts_found": "No posts found!",
|
||||
"post_is_deleted": "This post is deleted!",
|
||||
"no_posts_found": "Nebyly nalezeny žádné příspěvky!",
|
||||
"post_is_deleted": "Tento příspěvek je vymazán!",
|
||||
"profile": "Profil",
|
||||
"posted_by": "Posted by %1",
|
||||
"posted_by_guest": "Posted by Guest",
|
||||
@@ -74,6 +74,7 @@
|
||||
"fork_no_pids": "Žádné příspěvky nebyly vybrány!",
|
||||
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
|
||||
"composer.title_placeholder": "Enter your topic title here...",
|
||||
"composer.handle_placeholder": "Name",
|
||||
"composer.discard": "Discard",
|
||||
"composer.submit": "Submit",
|
||||
"composer.replying_to": "Replying to %1",
|
||||
@@ -92,5 +93,6 @@
|
||||
"sort_by": "Sort by",
|
||||
"oldest_to_newest": "Oldest to Newest",
|
||||
"newest_to_oldest": "Newest to Oldest",
|
||||
"most_votes": "Most votes"
|
||||
"most_votes": "Most votes",
|
||||
"most_posts": "Most posts"
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"title": "Unread",
|
||||
"title": "Nepřečtené",
|
||||
"no_unread_topics": "Nejsou zde žádné nepřečtené témata.",
|
||||
"load_more": "Načíst další",
|
||||
"mark_as_read": "Mark as Read",
|
||||
"selected": "Selected",
|
||||
"all": "All",
|
||||
"topics_marked_as_read.success": "Topics marked as read!"
|
||||
"mark_as_read": "Označit jako přeštené",
|
||||
"selected": "Vybrané",
|
||||
"all": "Vše",
|
||||
"topics_marked_as_read.success": "Téma bylo označeno jako přečtené!"
|
||||
}
|
||||
@@ -2,9 +2,11 @@
|
||||
"banned": "Banned",
|
||||
"offline": "Offline",
|
||||
"username": "Uživatelské jméno",
|
||||
"joindate": "Join Date",
|
||||
"postcount": "Post Count",
|
||||
"email": "Email",
|
||||
"confirm_email": "Confirm Email",
|
||||
"delete_account": "Delete Account",
|
||||
"confirm_email": "Potvrdit email",
|
||||
"delete_account": "Vymazat účet",
|
||||
"delete_account_confirm": "Are you sure you want to delete your account? <br /><strong>This action is irreversible and you will not be able to recover any of your data</strong><br /><br />Enter your username to confirm that you wish to destroy this account.",
|
||||
"fullname": "Jméno a příjmení",
|
||||
"website": "Webové stránky",
|
||||
@@ -12,10 +14,11 @@
|
||||
"age": "Věk",
|
||||
"joined": "Registrován",
|
||||
"lastonline": "Naposledy online",
|
||||
"profile": "Profile",
|
||||
"profile": "Profil",
|
||||
"profile_views": "Zobrazení profilu",
|
||||
"reputation": "Reputace",
|
||||
"favourites": "Oblíbené",
|
||||
"watched": "Watched",
|
||||
"followers": "Sledují ho",
|
||||
"following": "Sleduje",
|
||||
"signature": "Podpis",
|
||||
@@ -24,15 +27,15 @@
|
||||
"chat": "Chat",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"profile_update_success": "Profile has been updated successfully!",
|
||||
"profile_update_success": "Profil byl úspěšně aktualizován!",
|
||||
"change_picture": "Změnit obrázek",
|
||||
"edit": "Upravit",
|
||||
"uploaded_picture": "Nahraný obrázek",
|
||||
"upload_new_picture": "Nahrát nový obrázek",
|
||||
"upload_new_picture_from_url": "Upload New Picture From URL",
|
||||
"current_password": "Current Password",
|
||||
"current_password": "Současné heslo",
|
||||
"change_password": "Změnit heslo",
|
||||
"change_password_error": "Invalid Password!",
|
||||
"change_password_error": "Neplatné heslo",
|
||||
"change_password_error_wrong_current": "Your current password is not correct!",
|
||||
"change_password_error_length": "Password too short!",
|
||||
"change_password_error_match": "Passwords must match!",
|
||||
@@ -48,6 +51,7 @@
|
||||
"settings": "Nastavení",
|
||||
"show_email": "Zobrazovat můj email v profilu",
|
||||
"show_fullname": "Show My Full Name",
|
||||
"restrict_chats": "Only allow chat messages from users I follow",
|
||||
"digest_label": "Subscribe to Digest",
|
||||
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
|
||||
"digest_off": "Off",
|
||||
@@ -55,10 +59,12 @@
|
||||
"digest_weekly": "Weekly",
|
||||
"digest_monthly": "Monthly",
|
||||
"send_chat_notifications": "Send an email if a new chat message arrives and I am not online",
|
||||
"send_post_notifications": "Send an email when replies are made to topics I am subscribed to",
|
||||
"has_no_follower": "Tohoto uživatele nikdo nesleduje :(",
|
||||
"follows_no_one": "Tento uživatel nikoho nesleduje :(",
|
||||
"has_no_posts": "This user didn't post anything yet.",
|
||||
"has_no_topics": "This user didn't post any topics yet.",
|
||||
"has_no_watched_topics": "This user didn't watch any topics yet.",
|
||||
"email_hidden": "Skrytý email",
|
||||
"hidden": "skrytý",
|
||||
"paginate_description": "Paginate topics and posts instead of using infinite scroll.",
|
||||
@@ -67,6 +73,8 @@
|
||||
"notification_sounds": "Play a sound when you receive a notification.",
|
||||
"browsing": "Browsing Settings",
|
||||
"open_links_in_new_tab": "Open outgoing links in new tab?",
|
||||
"enable_topic_searching": "Enable In-Topic Searching",
|
||||
"topic_search_help": "If enabled, in-topic searching will override the browser's default page search behaviour and allow you to search through the entire topic, instead of what is only shown on screen.",
|
||||
"follow_topics_you_reply_to": "Follow topics that you reply to.",
|
||||
"follow_topics_you_create": "Follow topics you create."
|
||||
}
|
||||
@@ -5,5 +5,8 @@
|
||||
"search": "Vyhledávat",
|
||||
"enter_username": "Zadej uživatelské jméno k hledání",
|
||||
"load_more": "Načíst další",
|
||||
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
|
||||
"users-found-search-took": "Nazelezeno: %1 uživetel(ů)! Vyhledání trvalo %2 ms.",
|
||||
"filter-by": "Filter By",
|
||||
"online-only": "Online only",
|
||||
"picture-only": "Picture only"
|
||||
}
|
||||
@@ -9,14 +9,16 @@
|
||||
"reset.text1": "Wir haben eine Anfrage auf Zurücksetzung deines Passworts erhalten, wahrscheinlich, weil du es vergessen hast. Falls dies nicht der Fall ist, ignoriere bitte diese E-Mail.",
|
||||
"reset.text2": "Klicke bitte auf den folgenden Link, um mit der Zurücksetzung deines Passworts fortzufahren:",
|
||||
"reset.cta": "Klicke hier, um dein Passwort zurückzusetzen",
|
||||
"digest.notifications": "You have unread notifications from %1:",
|
||||
"digest.notifications": "Du hast ungelesene Benachrichtigungen von %1:",
|
||||
"digest.latest_topics": "Aktuellste Themen vom %1",
|
||||
"digest.cta": "Klicke hier, um %1 zu besuchen",
|
||||
"digest.unsub.info": "Diese Zusammenfassung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
|
||||
"digest.daily.no_topics": "Es gab heute keine aktiven Themen",
|
||||
"digest.no_topics": "Es gab keine aktiven Themen in den letzten %1",
|
||||
"notif.chat.subject": "Neue Chatnachricht von %1 erhalten",
|
||||
"notif.chat.cta": "Klicke hier, um die Unterhaltung fortzusetzen",
|
||||
"notif.chat.unsub.info": "Diese Chat-Benachrichtigung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
|
||||
"notif.post.cta": "Hier klicken, um das gesamte Thema zu lesen",
|
||||
"notif.post.unsub.info": "Diese Mitteilung wurde wegen ihrer Abonnement-Einstellung gesendet.",
|
||||
"test.text1": "Dies ist eine Test-E-Mail, um zu überprüfen, ob der E-Mailer deines NodeBB korrekt eingestellt wurde.",
|
||||
"unsub.cta": "Klicke hier, um diese Einstellungen zu ändern.",
|
||||
"closing": "Danke!"
|
||||
|
||||
@@ -17,48 +17,57 @@
|
||||
"invalid-pagination-value": "Die Nummerierung ist ungültig",
|
||||
"username-taken": "Der Benutzername ist bereits vergeben",
|
||||
"email-taken": "Die E-Mail-Adresse ist bereits vergeben",
|
||||
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
|
||||
"email-not-confirmed": "Deine E-Mail wurde noch nicht bestätigt. Bitte klicke hier, um deine E-Mail zu bestätigen.",
|
||||
"email-not-confirmed-chat": "Der Chat ist deaktiviert bis Du deine E-Mail bestätigt hast",
|
||||
"username-too-short": "Benutzername ist zu kurz",
|
||||
"username-too-long": "Der Benutzername ist zu lang",
|
||||
"user-banned": "Der Benutzer ist gesperrt",
|
||||
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
|
||||
"no-category": "Category does not exist",
|
||||
"no-topic": "Topic does not exist",
|
||||
"no-post": "Post does not exist",
|
||||
"no-group": "Group does not exist",
|
||||
"no-user": "User does not exist",
|
||||
"no-teaser": "Teaser does not exist",
|
||||
"no-privileges": "You do not have enough privileges for this action.",
|
||||
"user-too-new": "Entschuldigung, du musst %1 Sekunden warten, bevor du deinen ersten Beitrag verfassen kannst!",
|
||||
"no-category": "Die Kategorie existiert nicht",
|
||||
"no-topic": "Das Thema existiert nicht",
|
||||
"no-post": "Der Beitrag existiert nicht",
|
||||
"no-group": "Die Gruppe existiert nicht",
|
||||
"no-user": "Der Benutzer existiert nicht",
|
||||
"no-teaser": "Zusammenfassung existiert nicht",
|
||||
"no-privileges": "Du verfügst nicht über ausreichende Berechtigungen, um die Aktion durchzuführen.",
|
||||
"no-emailers-configured": "Es wurde keine E-Mail-Plugins geladen, weshalb eine Test-E-Mail nicht gesendet werden konnte.",
|
||||
"category-disabled": "Kategorie ist deaktiviert",
|
||||
"topic-locked": "Thema ist gesperrt",
|
||||
"still-uploading": "Bitte warte bis der Vorgang abgeschlossen ist.",
|
||||
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
|
||||
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
|
||||
"content-too-short": "Bitte gib einen längeren Beitrag ein. Beiträge sollten mindestens %1 Zeichen enthalten.",
|
||||
"title-too-short": "Bitte gib einen längeren Titel ein. Titel sollten mindestens %1 Zeichen enthalten.",
|
||||
"title-too-long": "Der Titel darf maximal %1 Zeichen enthalten.",
|
||||
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
|
||||
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
|
||||
"too-many-posts": "Du kannst maximal alle %1 Sekunden einen Beitrag erstellen - bitte warte, bevor du einen neuen Beitrag erstellst",
|
||||
"too-many-posts-newbie": "Als neuer Benutzer kannst du nur alle %1 Sekunden einen Beitrag verfassen, bis du %2 Reputationspunkte hast - Bitte warte etwas, bevor du erneut einen Beitrag verfasst",
|
||||
"file-too-big": "Die maximale Dateigröße beträgt %1 kbs - bitte lade eine kleinere Datei hoch",
|
||||
"cant-vote-self-post": "Du kannst deinen eigenen Beitrag nicht bewerten.",
|
||||
"already-favourited": "You have already favourited this post",
|
||||
"already-unfavourited": "You have already unfavourited this post",
|
||||
"already-favourited": "Dieser Beitrag ist bereits in deinen Favoriten enthalten",
|
||||
"already-unfavourited": "Du hast diesen Beitrag bereits aus deinen Favoriten entfernt",
|
||||
"cant-ban-other-admins": "Du kannst andere Administratoren nicht sperren!",
|
||||
"invalid-image-type": "Ungültiger Bildtyp",
|
||||
"invalid-image-type": "Falsche Bildart. Erlaubte Arten sind: %1",
|
||||
"invalid-image-extension": "Ungültige Dateinamenerweiterung",
|
||||
"group-name-too-short": "Gruppenname zu kurz",
|
||||
"group-already-exists": "Gruppe existiert bereits",
|
||||
"group-name-change-not-allowed": "Du kannst den Namen der Gruppe nicht ändern",
|
||||
"post-already-deleted": "This post has already been deleted",
|
||||
"post-already-restored": "This post has already been restored",
|
||||
"topic-already-deleted": "This topic has already been deleted",
|
||||
"topic-already-restored": "This topic has already been restored",
|
||||
"group-already-member": "Du bist bereits Teil dieser Gruppe",
|
||||
"group-needs-owner": "Diese Gruppe muss mindestens einen Besitzer vorweisen",
|
||||
"post-already-deleted": "Dieser Beitrag ist bereits gelöscht worden",
|
||||
"post-already-restored": "Dieser Beitrag ist bereits wiederhergestellt worden",
|
||||
"topic-already-deleted": "Dieses Thema ist bereits gelöscht worden",
|
||||
"topic-already-restored": "Dieses Thema ist bereits wiederhergestellt worden",
|
||||
"topic-thumbnails-are-disabled": "Vorschaubilder für Themen sind deaktiviert",
|
||||
"invalid-file": "Datei ungültig",
|
||||
"uploads-are-disabled": "Uploads sind deaktiviert",
|
||||
"upload-error": "Upload-Fehler: %1",
|
||||
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
|
||||
"signature-too-long": "Entschuldigung, deine Signatur darf maximal %1 Zeichen enthalten.",
|
||||
"cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!",
|
||||
"chat-restricted": "Dieser Benutzer hat seine Chatfunktion eingeschränkt. Du kannst nur mit diesem Benutzer chatten, wenn er dir folgt.",
|
||||
"too-many-messages": "Du hast zu viele Nachrichten versandt, bitte warte eine Weile.",
|
||||
"reputation-system-disabled": "Das Reputationssystem ist deaktiviert.",
|
||||
"downvoting-disabled": "Downvotes sind deaktiviert.",
|
||||
"not-enough-reputation-to-downvote": "Deine Reputation ist zu niedrig, um diesen Beitrag negativ zu bewerten.",
|
||||
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
|
||||
"reload-failed": "Es ist ein Problem während des Reloads von NodeBB aufgetreten: \"%1\". NodeBB wird weiterhin clientseitige Assets bereitstellen, allerdings solltest du das, was du vor dem Reload gemacht hast, rückgängig machen."
|
||||
"not-enough-reputation-to-flag": "Deine Reputation ist nicht gut genug, um diesen Beitrag zu melden",
|
||||
"reload-failed": "Es ist ein Problem während des Reloads von NodeBB aufgetreten: \"%1\". NodeBB wird weiterhin clientseitige Assets bereitstellen, allerdings solltest du das, was du vor dem Reload gemacht hast, rückgängig machen.",
|
||||
"registration-error": "Registrierungsfehler",
|
||||
"parse-error": "Ein Fehler ist beim Parsen der Server-Antwort aufgetreten"
|
||||
}
|
||||
@@ -3,9 +3,10 @@
|
||||
"search": "Suche",
|
||||
"buttons.close": "Schließen",
|
||||
"403.title": "Zugriff verweigert",
|
||||
"403.message": "Du bist nicht dazu berechtigt, diese Seite aufzurufen. <a href='/login'>Logge dich ein</a> und versuche es erneut.",
|
||||
"403.message": "Du hast keine Zugriffsberechtigung für diese Seite.",
|
||||
"403.login": "Du solltest Dich <a href='%1/login'>einloggen</a>.",
|
||||
"404.title": " Nicht Gefunden",
|
||||
"404.message": "Die angeforderte Seite wurde nicht gefunden. <a href='/''>Zurück zur Übersicht</a>.",
|
||||
"404.message": "Diese Seite existiert nicht. Zur <a href='%1/'>Homepage</a> zurückkehren.",
|
||||
"500.title": "Interner Fehler.",
|
||||
"500.message": "Ups! Scheint als wäre etwas schief gelaufen!",
|
||||
"register": "Registrieren",
|
||||
@@ -26,6 +27,7 @@
|
||||
"header.tags": "Tags",
|
||||
"header.popular": "Beliebt",
|
||||
"header.users": "Benutzer",
|
||||
"header.groups": "Gruppen",
|
||||
"header.chats": "Chats",
|
||||
"header.notifications": "Benachrichtigungen",
|
||||
"header.search": "Suche",
|
||||
@@ -72,5 +74,8 @@
|
||||
"guests": "Gäste",
|
||||
"updated.title": "Forum aktualisiert",
|
||||
"updated.message": "Dieses Forum wurde gerade auf die neueste Version aktualisiert. Klicke hier, um die Seite neuzuladen.",
|
||||
"privacy": "Privacy"
|
||||
"privacy": "Privatsphäre",
|
||||
"follow": "Folgen",
|
||||
"unfollow": "Entfolgen",
|
||||
"delete_all": "Alles löschen"
|
||||
}
|
||||
@@ -1,8 +1,21 @@
|
||||
{
|
||||
"groups": "Groups",
|
||||
"groups": "Gruppen",
|
||||
"view_group": "Gruppe betrachten",
|
||||
"owner": "Gruppenbesitzer",
|
||||
"new_group": "Neue Gruppe erstellen",
|
||||
"no_groups_found": "Es sind keine Gruppen vorhanden",
|
||||
"cover-instructions": "Drag and Drop ein Foto, bewege es in Position, dann drücke <strong>Speichern</strong>",
|
||||
"cover-change": "Ändern",
|
||||
"cover-save": "Speichern",
|
||||
"cover-saving": "Am speichern",
|
||||
"details.title": "Gruppendetails",
|
||||
"details.members": "Mitgliederliste",
|
||||
"details.pending": "Ausstehende Mitglieder",
|
||||
"details.has_no_posts": "Die Mitglieder dieser Gruppe haben keine Beiträge verfasst.",
|
||||
"details.latest_posts": "Aktuelle Beiträge"
|
||||
"details.latest_posts": "Aktuelle Beiträge",
|
||||
"details.private": "Private Gruppe",
|
||||
"details.public": "Öffentliche Gruppe",
|
||||
"details.owner_options": "Gruppenadministration",
|
||||
"event.updated": "Gruppendetails wurden aktualisiert",
|
||||
"event.deleted": "Die Gruppe \"% 1\" wurde gelöscht"
|
||||
}
|
||||
@@ -12,7 +12,6 @@
|
||||
"chat.message-history": "Nachrichtenverlauf",
|
||||
"chat.pop-out": "Chat als Pop-out anzeigen",
|
||||
"chat.maximize": "Maximieren",
|
||||
"chat.yesterday": "Gestern",
|
||||
"chat.seven_days": "7 Tage",
|
||||
"chat.thirty_days": "30 Tage",
|
||||
"chat.three_months": "3 Monate",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"favourited_your_post_in": "<strong>%1</strong> hat deinen Beitrag in <strong>%2</strong> favorisiert.",
|
||||
"user_flagged_post_in": "<strong>%1</strong> hat einen Beitrag in </strong>%2</strong> gemeldet",
|
||||
"user_posted_to": "<strong>%1</strong> hat auf <strong>%2</strong> geantwortet.",
|
||||
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
|
||||
"user_posted_topic": "<strong>%1</strong> hat ein neues Thema erstellt: <strong>%2</strong>",
|
||||
"user_mentioned_you_in": "<strong>%1</strong> erwähnte dich in <strong>%2</strong>",
|
||||
"user_started_following_you": "<strong>%1</strong> folgt dir jetzt.",
|
||||
"email-confirmed": "E-Mail bestätigt",
|
||||
|
||||
@@ -14,5 +14,5 @@
|
||||
"user.favourites": "Von %1 favorisierte Beiträge",
|
||||
"user.settings": "Benutzer-Einstellungen",
|
||||
"maintenance.text": "%1 befindet sich derzeit in der Wartung. Bitte komm später wieder.",
|
||||
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
|
||||
"maintenance.messageIntro": "Zusätzlich hat der Administrator diese Nachricht hinterlassen:"
|
||||
}
|
||||
@@ -5,5 +5,14 @@
|
||||
"month": "Monat",
|
||||
"year": "Jahr",
|
||||
"alltime": "Gesamter Zeitraum",
|
||||
"no_recent_topics": "Es gibt keine aktuellen Themen."
|
||||
"no_recent_topics": "Es gibt keine aktuellen Themen.",
|
||||
"there-is-a-new-topic": "Es gibt ein neues Thema.",
|
||||
"there-is-a-new-topic-and-a-new-post": "Es gibt ein neues Thema und einen neuen Beitrag.",
|
||||
"there-is-a-new-topic-and-new-posts": "Es gibt ein neues Thema und %1 neue Beiträge.",
|
||||
"there-are-new-topics": "Es gibt %1 neue Themen.",
|
||||
"there-are-new-topics-and-a-new-post": "Es gibt %1 neue Themen und einen neuen Beitrag.",
|
||||
"there-are-new-topics-and-new-posts": "Es gibt %1 neue Themen und %2 neue Beiträge.",
|
||||
"there-is-a-new-post": "Es gibt einen neuen Beitrag.",
|
||||
"there-are-new-posts": "Es gibt %1 neue Beiträge.",
|
||||
"click-here-to-reload": "Hier klicken um neu zu laden."
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
{
|
||||
"results_matching": "%1 Ergebniss(e) stimmen mit \"%2\" überein, (%3 Sekunden)",
|
||||
"no-matches": "Keine Beiträge gefunden"
|
||||
"no-matches": "Keine Ergebnisse gefunden",
|
||||
"in": "In",
|
||||
"by": "Bei",
|
||||
"posted-by": "Geschrieben von"
|
||||
}
|
||||
@@ -72,8 +72,9 @@
|
||||
"topic_will_be_moved_to": "Dieses Thema wird verschoben nach",
|
||||
"fork_topic_instruction": "Klicke auf die Beiträge, die du aufspalten willst",
|
||||
"fork_no_pids": "Keine Beiträge ausgewählt!",
|
||||
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
|
||||
"fork_success": "Thema erfolgreich abgespalten! Klicke hier, um zum abgespalteten Thema zu gelangen.",
|
||||
"composer.title_placeholder": "Hier den Titel des Themas eingeben...",
|
||||
"composer.handle_placeholder": "Name",
|
||||
"composer.discard": "Verwerfen",
|
||||
"composer.submit": "Absenden",
|
||||
"composer.replying_to": "Antworte auf %1",
|
||||
@@ -92,5 +93,6 @@
|
||||
"sort_by": "Sortieren nach",
|
||||
"oldest_to_newest": "Älteste zuerst",
|
||||
"newest_to_oldest": "Neuster zuerst",
|
||||
"most_votes": "Die meisten Stimmen"
|
||||
"most_votes": "Die meisten Stimmen",
|
||||
"most_posts": "Die meisten Beiträge"
|
||||
}
|
||||
@@ -2,6 +2,8 @@
|
||||
"banned": "Gebannt",
|
||||
"offline": "offline",
|
||||
"username": "Nutzername",
|
||||
"joindate": "Registriert vor",
|
||||
"postcount": "Beiträge",
|
||||
"email": "E-Mail",
|
||||
"confirm_email": "E-Mail bestätigen",
|
||||
"delete_account": "Konto löschen",
|
||||
@@ -16,6 +18,7 @@
|
||||
"profile_views": "Profilaufrufe",
|
||||
"reputation": "Reputation",
|
||||
"favourites": "Favoriten",
|
||||
"watched": "Beobachtet",
|
||||
"followers": "Folger",
|
||||
"following": "Folgt",
|
||||
"signature": "Signatur",
|
||||
@@ -47,7 +50,8 @@
|
||||
"max": "max.",
|
||||
"settings": "Einstellungen",
|
||||
"show_email": "Zeige meine E-Mail Adresse an.",
|
||||
"show_fullname": "Show My Full Name",
|
||||
"show_fullname": "Zeige meinen kompletten Namen an",
|
||||
"restrict_chats": "Nur Chatnachrichten von Benutzern, denen ich folge, erlauben",
|
||||
"digest_label": "Auszug abonnieren",
|
||||
"digest_description": "Abonniere E-Mail-Benachrichtigungen für dieses Forum (neue Benachrichtigungen und Themen) nach einem festen Zeitplan.",
|
||||
"digest_off": "Aus",
|
||||
@@ -55,10 +59,12 @@
|
||||
"digest_weekly": "Wöchentlich",
|
||||
"digest_monthly": "Monatlich",
|
||||
"send_chat_notifications": "Sende eine E-Mail, wenn eine neue Chat-Nachricht eingeht und ich nicht online bin",
|
||||
"send_post_notifications": "Sende eine E-Mail wenn auf Themen die ich abonniert habe geantwortet wird",
|
||||
"has_no_follower": "Dieser User hat noch keine Follower.",
|
||||
"follows_no_one": "Dieser User folgt noch niemandem :(",
|
||||
"has_no_posts": "Dieser Nutzer hat noch nichts gepostet.",
|
||||
"has_no_topics": "Dieser Nutzer hat noch keine Themen gepostet.",
|
||||
"has_no_watched_topics": "Diese Person beobachtet keine Themen",
|
||||
"email_hidden": "E-Mail Adresse versteckt",
|
||||
"hidden": "versteckt",
|
||||
"paginate_description": "Themen und Beiträge auf Seiten aufteilen statt unendliches Scrollen verwenden.",
|
||||
@@ -67,6 +73,8 @@
|
||||
"notification_sounds": "Ton abspielen, wenn ich eine Benachrichtigung erhalte.",
|
||||
"browsing": "Browser Einstellungen",
|
||||
"open_links_in_new_tab": "Externe Links in neuem Tab öffnen?",
|
||||
"enable_topic_searching": "Suchen innerhalb von Themen aktivieren",
|
||||
"topic_search_help": "Falls aktiviert, wird die Suche im Thema das Standardsuchverhalten des Browsers überschreiben und es Ihnen erlauben, das ganze Thema statt dessen, was sich auf dem Bildschirm befindet, zu durchsuchen.",
|
||||
"follow_topics_you_reply_to": "Folge Themen, auf die du antwortest.",
|
||||
"follow_topics_you_create": "Folge Themen, die du erstellst."
|
||||
}
|
||||
@@ -5,5 +5,8 @@
|
||||
"search": "Suchen",
|
||||
"enter_username": "Benutzer durchsuchen",
|
||||
"load_more": "mehr laden",
|
||||
"users-found-search-took": "%1 Benutzer gefunden! Die Suche dauerte %2 ms."
|
||||
"users-found-search-took": "%1 Benutzer gefunden! Die Suche dauerte %2 ms.",
|
||||
"filter-by": "Filtern nach",
|
||||
"online-only": "Nur Online",
|
||||
"picture-only": "Nur mit Bildern"
|
||||
}
|
||||
8
public/language/el/category.json
Normal file
8
public/language/el/category.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"new_topic_button": "Νέο Θέμα",
|
||||
"no_topics": "<strong>Δεν υπάρχουν θέματα σε αυτή την κατηγορία.</strong><br />Γιατί δεν δοκιμάζεις να δημοσιεύσεις ένα εσύ;",
|
||||
"browsing": "περιηγούνται",
|
||||
"no_replies": "Κανείς δεν έχει απαντήσει",
|
||||
"share_this_category": "Μοιράσου αυτή την κατηγορία",
|
||||
"ignore": "Αγνόηση"
|
||||
}
|
||||
25
public/language/el/email.json
Normal file
25
public/language/el/email.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"password-reset-requested": "Ζητήθηκε Επαναφορά Κωδικου - %1!",
|
||||
"welcome-to": "Καλωσόρισες στο %1",
|
||||
"greeting_no_name": "Γειά σου",
|
||||
"greeting_with_name": "Γειά σου %1",
|
||||
"welcome.text1": "Ευχαριστούμε που γράφτηκες στο %1!",
|
||||
"welcome.text2": "Για να ενεργοποιήσεις πλήρως τον λογαριασμό σου, πρέπει να επιβεβαιώσουμε πως η διεύθυνση email με την οποια γράφτηκες σου ανήκει.",
|
||||
"welcome.cta": "Κάνε κλικ εδώ για να επιβεβαιώσεις την διεύθυνσή σου",
|
||||
"reset.text1": "Λάβαμε ένα αίτημα για επαναφορά του κωδικού σου, πιθανότατα γιατί τον ξέχασες. Αν δεν έκανες εσύ αυτό το αίτημα, αγνόησε αυτό το email.",
|
||||
"reset.text2": "Για να κάνεις την επαναφορά του κωδικού σου, παρακαλώ πάτα στο παρακάτω σύνδεσμο:",
|
||||
"reset.cta": "Κάνε κλικ εδώ για να επαναφέρεις τον κωδικό σου",
|
||||
"digest.notifications": "You have unread notifications from %1:",
|
||||
"digest.latest_topics": "Πρόσφατα θέματα στο %1",
|
||||
"digest.cta": "Κάνε κλικ εδώ για να επισκεφτείς το %1",
|
||||
"digest.unsub.info": "Αυτή η σύνοψη σου στάλθηκε λόγω των ρυθμίσεών σου.",
|
||||
"digest.no_topics": "There have been no active topics in the past %1",
|
||||
"notif.chat.subject": "Νέο μήνυμα συνομιλίας από τον/την %1",
|
||||
"notif.chat.cta": "Κάνε κλικ εδώ για να πας στην συνομιλία",
|
||||
"notif.chat.unsub.info": "Αυτή η ειδοποίηση για συνομιλία σου στάλθηκε λόγω των ρυθμίσεών σου. ",
|
||||
"notif.post.cta": "Click here to read the full topic",
|
||||
"notif.post.unsub.info": "This post notification was sent to you due to your subscription settings.",
|
||||
"test.text1": "Αυτό είναι ένα δοκιμαστικό email για να επιβεβαιώσουμε ότι ο emailer έχει στηθεί σωστά για το NodeBB.",
|
||||
"unsub.cta": "Κάνε κλικ εδώ για να αλλάξεις αυτές τις ρυθμίσεις",
|
||||
"closing": "Ευχαριστούμε!"
|
||||
}
|
||||
73
public/language/el/error.json
Normal file
73
public/language/el/error.json
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"invalid-data": "Άκυρα Δεδομένα",
|
||||
"not-logged-in": "Φαίνεται πως δεν είσαι συνδεδεμένος/η.",
|
||||
"account-locked": "Ο λογαριασμός σου έχει κλειδωθεί προσωρινά",
|
||||
"search-requires-login": "Πρέπει να είσαι συνδεδεμένος/η για να αναζητήσεις! Παρακαλώ συνδέσου ή εγγράψου!",
|
||||
"invalid-cid": "Άκυρο ID Κατηγορίας",
|
||||
"invalid-tid": "Άκυρο ID Θέματος",
|
||||
"invalid-pid": "Άκυρο ID Δημοσίευσης",
|
||||
"invalid-uid": "Άκυρο ID Χρήστη",
|
||||
"invalid-username": "Άκυρο Όνομα Χρήστη",
|
||||
"invalid-email": "Άκυρο Email",
|
||||
"invalid-title": "Άκυρος Τίτλος!",
|
||||
"invalid-user-data": "Άκυρα Δεδομένα Χρήστη",
|
||||
"invalid-password": "Άκυρος Κωδικός",
|
||||
"invalid-username-or-password": "Παρακαλώ γράψε το όνομα χρήστη και τον κωδικό",
|
||||
"invalid-search-term": "Άκυρος όρος αναζήτησης",
|
||||
"invalid-pagination-value": "Άκυρη τιμή σελιδοποίησης",
|
||||
"username-taken": "Το όνομα χρήστη είναι πιασμένο",
|
||||
"email-taken": "Το email είναι πιασμένο",
|
||||
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
|
||||
"email-not-confirmed-chat": "You are unable to chat until your email is confirmed",
|
||||
"username-too-short": "Το όνομα χρήστη είναι πολύ μικρό",
|
||||
"username-too-long": "Το όνομα χρήστη είναι πολύ μεγάλο",
|
||||
"user-banned": "Ο Χρήστης είναι αποκλεισμένος/η",
|
||||
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
|
||||
"no-category": "Category does not exist",
|
||||
"no-topic": "Topic does not exist",
|
||||
"no-post": "Post does not exist",
|
||||
"no-group": "Group does not exist",
|
||||
"no-user": "User does not exist",
|
||||
"no-teaser": "Teaser does not exist",
|
||||
"no-privileges": "You do not have enough privileges for this action.",
|
||||
"no-emailers-configured": "Δεν έχουν φορτωθεί email plugins, οποτε το δοκιμαστικό email δεν μπορεί να σταλθεί",
|
||||
"category-disabled": "Η κατηγορία έχει απενεργοποιηθεί",
|
||||
"topic-locked": "Το θέμα έχει κλειδωθεί",
|
||||
"still-uploading": "Παρακαλώ περίμενε να τελειώσει το ανέβασμα των αρχείων.",
|
||||
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
|
||||
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
|
||||
"title-too-long": "Παρακαλώ γράψε έναν μικρότερο τίτλο. Δεν μπορεί να είναι μεγαλύτερος από %1 χαρακτήρες.",
|
||||
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
|
||||
"too-many-posts-newbie": "As a new user, you can only post once every %1 seconds until you have earned %2 reputation - please wait before posting again",
|
||||
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
|
||||
"cant-vote-self-post": "Δεν μπορείς να ψηφίσεις την δημοσίευσή σου",
|
||||
"already-favourited": "You have already favourited this post",
|
||||
"already-unfavourited": "You have already unfavourited this post",
|
||||
"cant-ban-other-admins": "Δεν μπορείς να αποκλείσεις άλλους διαχειριστές!",
|
||||
"invalid-image-type": "Invalid image type. Allowed types are: %1",
|
||||
"invalid-image-extension": "Invalid image extension",
|
||||
"group-name-too-short": "Το όνομα της ομάδας είναι πολύ μικρό",
|
||||
"group-already-exists": "Το όνομα της ομάδας υπάρχει ήδη",
|
||||
"group-name-change-not-allowed": "Αλλαγή του ονόματος της ομάδας δεν επιτρέπεται",
|
||||
"group-already-member": "You are already part of this group",
|
||||
"group-needs-owner": "This group requires at least one owner",
|
||||
"post-already-deleted": "This post has already been deleted",
|
||||
"post-already-restored": "This post has already been restored",
|
||||
"topic-already-deleted": "This topic has already been deleted",
|
||||
"topic-already-restored": "This topic has already been restored",
|
||||
"topic-thumbnails-are-disabled": "Οι εικόνες θεμάτων είναι απενεργοποιημένες",
|
||||
"invalid-file": "Άκυρο Αρχείο",
|
||||
"uploads-are-disabled": "Το ανέβασμα αρχείων έχει απενεργοποιηθεί",
|
||||
"upload-error": "Λάθος ανεβάσματος αρχείου: %1",
|
||||
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
|
||||
"cant-chat-with-yourself": "Δεν μπορείς να συνομιλήσεις με τον εαυτό σου!",
|
||||
"chat-restricted": "This user has restricted their chat messages. They must follow you before you can chat with them",
|
||||
"too-many-messages": "You have sent too many messages, please wait awhile.",
|
||||
"reputation-system-disabled": "Το σύστημα φήμης έχει απενεργοποιηθεί.",
|
||||
"downvoting-disabled": "Η καταψήφιση έχει απενεργοποιηθεί",
|
||||
"not-enough-reputation-to-downvote": "Δεν έχεις αρκετή φήμη για να καταψηφίσεις αυτή την δημοσίευση",
|
||||
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
|
||||
"reload-failed": "Το NodeBB συνάντησε ένα πρόβλημα καθώς γινόταν η ανανέωση: \"%1\". Το NodeBB θα συνεχίσει να προσφέρει τα στοιχεία του χρήστη, αν και θα ήταν καλή ιδέα να επαναφέρεις ότι έκανες πριν την ανανέωση.",
|
||||
"registration-error": "Registration Error",
|
||||
"parse-error": "Something went wrong while parsing server response"
|
||||
}
|
||||
81
public/language/el/global.json
Normal file
81
public/language/el/global.json
Normal file
@@ -0,0 +1,81 @@
|
||||
{
|
||||
"home": "Κεντρική",
|
||||
"search": "Αναζήτηση",
|
||||
"buttons.close": "Κλείσιμο",
|
||||
"403.title": "Δεν επιτρέπεται η πρόσβαση",
|
||||
"403.message": "You seem to have stumbled upon a page that you do not have access to.",
|
||||
"403.login": "Perhaps you should <a href='%1/login'>try logging in</a>?",
|
||||
"404.title": "Δεν βρέθηκε",
|
||||
"404.message": "You seem to have stumbled upon a page that does not exist. Return to the <a href='%1/'>home page</a>.",
|
||||
"500.title": "Εσωτερικό σφάλμα.",
|
||||
"500.message": "Ουπς! Φαίνεται πως κάτι πήγε στραβά!",
|
||||
"register": "Εγγραφή",
|
||||
"login": "Σύνδεση",
|
||||
"please_log_in": "Παρακαλώ Συνδέσου",
|
||||
"logout": "Αποσύνδεση",
|
||||
"posting_restriction_info": "Η δημοσίευση είναι περιορισμένη μόνο για εγγεγραμμένα μέλη, κάνε κλικ εδώ για να συνδεθείς.",
|
||||
"welcome_back": "Καλωσόρισες Πάλι",
|
||||
"you_have_successfully_logged_in": "Συνδέθηκες με επιτυχία",
|
||||
"save_changes": "Αποθήκευση Αλλαγών",
|
||||
"close": "Κλείσιμο",
|
||||
"pagination": "Σελιδοποίηση",
|
||||
"pagination.out_of": "%1 από %2",
|
||||
"pagination.enter_index": "Εισαγωγή Σελίδας",
|
||||
"header.admin": "Διαχειριστής",
|
||||
"header.recent": "Πρόσφατα",
|
||||
"header.unread": "Μη αναγνωσμένα",
|
||||
"header.tags": "Ετικέτες",
|
||||
"header.popular": "Δημοφιλή",
|
||||
"header.users": "Χρήστες",
|
||||
"header.groups": "Groups",
|
||||
"header.chats": "Συνομιλίες",
|
||||
"header.notifications": "Ειδοποιήσεις",
|
||||
"header.search": "Αναζήτηση",
|
||||
"header.profile": "Προφίλ",
|
||||
"notifications.loading": "Φόρτωση Ειδοποιήσεων",
|
||||
"chats.loading": "Φόρτωση Συνομιλιών",
|
||||
"motd.welcome": "Καλωσόρισες στο NodeBB, την πλατφόρμα συζητήσεων του μέλλοντος.",
|
||||
"previouspage": "Προηγούμενη Σελίδα",
|
||||
"nextpage": "Επόμενη Σελίδα",
|
||||
"alert.success": "Επιτυχία",
|
||||
"alert.error": "Σφάλμα",
|
||||
"alert.banned": "Αποκλεισμένος/η",
|
||||
"alert.banned.message": "Μόλις αποκλείστηκες, και θα αποσυνδεθείς.",
|
||||
"alert.unfollow": "Δεν ακολουθείς πλέον τον/την %1!",
|
||||
"alert.follow": "Ακολουθείς τον/την %1!",
|
||||
"online": "Συνδεδεμένος",
|
||||
"users": "Χρήστες",
|
||||
"topics": "Θέματα",
|
||||
"posts": "Δημοσιεύσεις",
|
||||
"views": "Εμφανίσεις",
|
||||
"reputation": "Φήμη",
|
||||
"read_more": "διάβασε περισσότερα",
|
||||
"posted_ago_by_guest": "δημοσιεύτηκε πριν από %1 από Επισκέπτη",
|
||||
"posted_ago_by": "δημοσιεύτηκε πριν από %1 από τον/την %2",
|
||||
"posted_ago": "δημοσιεύτηκε πρίν από %1",
|
||||
"posted_in_ago_by_guest": "δημοσιεύτηκε στο %1 πριν από %2 από Επισκέπτη",
|
||||
"posted_in_ago_by": "δημοσιεύτηκε στο %1 πριν από %2 από τον/την %3",
|
||||
"posted_in_ago": "δημοσιεύτηκε στο %1 πριν από %2",
|
||||
"replied_ago": "απαντήθηκε πριν από %1",
|
||||
"user_posted_ago": "Ο/Η %1 δημοσίευσε πριν από %2",
|
||||
"guest_posted_ago": "Επισκέπτης δημοσίευσε πριν από %1",
|
||||
"last_edited_by_ago": "επεξεργάστηκε τελευταία φορά από τον/την %1 πριν από %2",
|
||||
"norecentposts": "Δεν υπάρχουν πρόσφατες δημοσιεύσεις",
|
||||
"norecenttopics": "Δεν υπάρχουν πρόσφατα θέματα",
|
||||
"recentposts": "Πρόσφατες Δημοσιεύσεις",
|
||||
"recentips": "Πρόσφατη IP Σύνδεσης",
|
||||
"away": "Απών/ούσα",
|
||||
"dnd": "Μην ενοχλείτε",
|
||||
"invisible": "Αόρατος/η",
|
||||
"offline": "Εκτός Σύνδεσης",
|
||||
"email": "Email",
|
||||
"language": "Γλώσσα",
|
||||
"guest": "Επισκέπτης",
|
||||
"guests": "Επισκέπτες",
|
||||
"updated.title": "Το φόρουμ αναβαθμίστηκε",
|
||||
"updated.message": "Το φόρουμ μόλις αναβαθμίστηκε στην πιο πρόσφατη έκδοση. Κάνε κλικ εδώ για να ανανεώσεις την σελίδα.",
|
||||
"privacy": "Privacy",
|
||||
"follow": "Follow",
|
||||
"unfollow": "Unfollow",
|
||||
"delete_all": "Delete All"
|
||||
}
|
||||
21
public/language/el/groups.json
Normal file
21
public/language/el/groups.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"groups": "Groups",
|
||||
"view_group": "Προβολή Ομάδας",
|
||||
"owner": "Group Owner",
|
||||
"new_group": "Create New Group",
|
||||
"no_groups_found": "There are no groups to see",
|
||||
"cover-instructions": "Drag and Drop a photo, drag to position, and hit <strong>Save</strong>",
|
||||
"cover-change": "Change",
|
||||
"cover-save": "Save",
|
||||
"cover-saving": "Saving",
|
||||
"details.title": "Λεπτομέρειες Ομάδας",
|
||||
"details.members": "Λίστα Μελών",
|
||||
"details.pending": "Pending Members",
|
||||
"details.has_no_posts": "Τα μέλη αυτής της ομάδας δεν έχουν δημοσιεύσει τίποτα.",
|
||||
"details.latest_posts": "Τελευταίες δημοσιεύσεις.",
|
||||
"details.private": "Private Group",
|
||||
"details.public": "Public Group",
|
||||
"details.owner_options": "Group Administration",
|
||||
"event.updated": "Group details have been updated",
|
||||
"event.deleted": "The group \"%1\" has been deleted"
|
||||
}
|
||||
5
public/language/el/language.json
Normal file
5
public/language/el/language.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Ελληνικά (Ελλάδα/Κύπρος)",
|
||||
"code": "el",
|
||||
"dir": "ltr"
|
||||
}
|
||||
9
public/language/el/login.json
Normal file
9
public/language/el/login.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"username": "Όνομα χρήστη / Email",
|
||||
"remember_me": "Απομνημόνευση;",
|
||||
"forgot_password": "Ξέχασες τον κωδικό σου;",
|
||||
"alternative_logins": "Εναλλακτικά Login",
|
||||
"failed_login_attempt": "Η προσπάθεια σύνδεσης απέτυχε, παρακαλώ προσπάθησε ξανά.",
|
||||
"login_successful": "Συνδέθηκες επιτυχώς!",
|
||||
"dont_have_account": "Δεν έχεις λογαριασμό;"
|
||||
}
|
||||
21
public/language/el/modules.json
Normal file
21
public/language/el/modules.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"chat.chatting_with": "Συνομιλία με τον/την <span id=\"chat-with-name\"></span>",
|
||||
"chat.placeholder": "Γράψε το μήνυμά σου εδώ, πάτα enter για αποστολή",
|
||||
"chat.send": "Αποστολή",
|
||||
"chat.no_active": "Δεν έχεις ενεργές συνομιλίες.",
|
||||
"chat.user_typing": "Ο/Η %1 πληκτρολογεί...",
|
||||
"chat.user_has_messaged_you": "Ο/Η %1 σου έστειλε μήνυμα.",
|
||||
"chat.see_all": "Προβολή όλων των Συνομιλιών",
|
||||
"chat.no-messages": "Παρακαλώ επέλεξε έναν παραλήπτη για να δείς το ιστορικό της συνομιλίας",
|
||||
"chat.recent-chats": "Πρόσφατες Συνομιλίες",
|
||||
"chat.contacts": "Επαφές",
|
||||
"chat.message-history": "Ιστορικό Συνομιλίας",
|
||||
"chat.pop-out": "Αποκόλληση συνομιλίας",
|
||||
"chat.maximize": "Μεγιστοποίηση",
|
||||
"chat.seven_days": "7 Ημέρες",
|
||||
"chat.thirty_days": "30 Ημέρες",
|
||||
"chat.three_months": "3 Μήνες",
|
||||
"composer.user_said_in": "Ο/Η %1 είπε στο %2:",
|
||||
"composer.user_said": "Ο/Η %1 είπε:",
|
||||
"composer.discard": "Είσαι σίγουρος/η πως θέλεις να πετάξεις αυτή την δημοσίευση;"
|
||||
}
|
||||
27
public/language/el/notifications.json
Normal file
27
public/language/el/notifications.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"title": "Ειδοποιήσεις",
|
||||
"no_notifs": "Δεν έχεις νέες ειδοποιήσεις;",
|
||||
"see_all": "Προβολή όλων των ειδοποιήσεων",
|
||||
"back_to_home": "Πίσω στο %1",
|
||||
"outgoing_link": "Εξερχόμενος Σύνδεσμος",
|
||||
"outgoing_link_message": "Τώρα φεύγεις από το %1.",
|
||||
"continue_to": "Συνέχεια στο %1",
|
||||
"return_to": "Επιστροφή στο %1",
|
||||
"new_notification": "Νέα Ειδοποίηση",
|
||||
"you_have_unread_notifications": "Έχεις μη αναγνωσμένες ειδοποιήσεις.",
|
||||
"new_message_from": "Νέο μήνυμα από τον/την <strong>%1</strong>",
|
||||
"upvoted_your_post_in": "Ο/Η <strong>%1</strong> υπερψήφισε την δημοσίευσή σου στο <strong>%2</strong>.",
|
||||
"moved_your_post": "Ο/Η <strong>%1</strong> μετακίνησε την δημοσίευσή σου.",
|
||||
"moved_your_topic": "Ο/Η <strong>%1</strong> μετακίνησε το θέμα σου.",
|
||||
"favourited_your_post_in": "Η δημοσίευσή σου στο <strong>%2</strong> αρέσει στον/ην <strong>%1</strong>.",
|
||||
"user_flagged_post_in": "Ο/Η <strong>%1</strong> επεσήμανε μια δημοσίευσή σου στο <strong>%2</strong>",
|
||||
"user_posted_to": "Ο/Η <strong>%1</strong> έγραψε μια απάντηση στο: <strong>%2</strong>",
|
||||
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
|
||||
"user_mentioned_you_in": "Ο/Η <strong>%1</strong> σε ανέφερε στο <strong>%2</strong>",
|
||||
"user_started_following_you": "Ο/Η <strong>%1</strong> σε ακολουθεί.",
|
||||
"email-confirmed": "Το Εmail Επιβεβαιώθηκε",
|
||||
"email-confirmed-message": "Ευχαριστούμε που επιβεβαίωσες το email σου. Ο λογαριασμός σου είναι πλέον πλήρως ενεργοποιημένος.",
|
||||
"email-confirm-error": "Συνέβη κάποιο σφάλμα...",
|
||||
"email-confirm-error-message": "Υπήρξε κάποιο πρόβλημα με την επιβεβαίωση της διεύθυνσής email σου. Ίσως ο κώδικας να είναι άκυρος ή να έχει λήξει.",
|
||||
"email-confirm-sent": "Στάλθηκε email επιβεβαίωσης."
|
||||
}
|
||||
18
public/language/el/pages.json
Normal file
18
public/language/el/pages.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"home": "Κεντρική",
|
||||
"unread": "Μη αναγνωσμένα Θέματα",
|
||||
"popular": "Δημοφιλή Θέματα",
|
||||
"recent": "Πρόσφατα Θέματα",
|
||||
"users": "Εγγεγραμμένοι Χρήστες",
|
||||
"notifications": "Ειδοποιήσεις",
|
||||
"tags": "Θέματα με ετικέτα \"%1\"",
|
||||
"user.edit": "Επεξεργασία του \"%1\"",
|
||||
"user.following": "Άτομα που ακολουθεί ο/η %1",
|
||||
"user.followers": "Άτομα που ακολουθούν τον/την %1",
|
||||
"user.posts": "Δημοσιεύσεις από τον/την %1",
|
||||
"user.topics": "Θέματα από τον/την %1",
|
||||
"user.favourites": "Οι αγαπημένες δημοσιεύσεις του/της %1",
|
||||
"user.settings": "Επιλογές Χρήστη",
|
||||
"maintenance.text": "Το %1 αυτή την στιγμή συντηρείται. Παρακαλώ έλα αργότερα.",
|
||||
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
|
||||
}
|
||||
18
public/language/el/recent.json
Normal file
18
public/language/el/recent.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"title": "Πρόσφατα",
|
||||
"day": "Ημέρα",
|
||||
"week": "Εβδομάδα",
|
||||
"month": "Μήνας",
|
||||
"year": "Έτος",
|
||||
"alltime": "Όλο το Ιστορικό",
|
||||
"no_recent_topics": "Δεν υπάρχουν πρόσφατα θέματα.",
|
||||
"there-is-a-new-topic": "There is a new topic.",
|
||||
"there-is-a-new-topic-and-a-new-post": "There is a new topic and a new post.",
|
||||
"there-is-a-new-topic-and-new-posts": "There is a new topic and %1 new posts.",
|
||||
"there-are-new-topics": "There are %1 new topics.",
|
||||
"there-are-new-topics-and-a-new-post": "There are %1 new topics and a new post.",
|
||||
"there-are-new-topics-and-new-posts": "There are %1 new topics and %2 new posts.",
|
||||
"there-is-a-new-post": "There is a new post.",
|
||||
"there-are-new-posts": "There are %1 new posts.",
|
||||
"click-here-to-reload": "Click here to reload."
|
||||
}
|
||||
18
public/language/el/register.json
Normal file
18
public/language/el/register.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"register": "Εγγραφή",
|
||||
"help.email": "Από προεπιλογή, το email σου θα είναι κρυμμένο από την κοινή θέα.",
|
||||
"help.username_restrictions": "Ένα μοναδικό όνομα χρήστη μεταξύ %1 και %2 χαρακτήρων. Άλλα άτομα μπορούν να σε αναφέρουν με το @<span id='yourUsername'>username</span> σου.",
|
||||
"help.minimum_password_length": "Το μήκος του κωδικού σου πρέπει να είναι τουλάχιστον %1 χαρακτήρες.",
|
||||
"email_address": "Διεύθυνση Email",
|
||||
"email_address_placeholder": "Εισαγωγή Διεύθυνσης Email",
|
||||
"username": "Όνομα Χρήστη",
|
||||
"username_placeholder": "Εισαγωγή Ονόματος Χρήστη",
|
||||
"password": "Κωδικός",
|
||||
"password_placeholder": "Εισαγωγή Κωδικού",
|
||||
"confirm_password": "Επιβεβαίωση Κωδικού",
|
||||
"confirm_password_placeholder": "Επιβεβαίωση Κωδικού",
|
||||
"register_now_button": "Εγγραφή Τώρα",
|
||||
"alternative_registration": "Εναλλακτική Εγγραφή",
|
||||
"terms_of_use": "Όροι Χρήσης",
|
||||
"agree_to_terms_of_use": "Συμφωνώ με τους Όρους Χρήσης"
|
||||
}
|
||||
14
public/language/el/reset_password.json
Normal file
14
public/language/el/reset_password.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"reset_password": "Επαναφορά Κωδικού",
|
||||
"update_password": "Ενημέρωση Κωδικού",
|
||||
"password_changed.title": "Ο Κωδικός Άλλαξε",
|
||||
"password_changed.message": "<p>Ο κωδικός επαναφέρθηκε με επιτυχία, παρακαλώ <a href=\"/login\">συνδέσου ξανά</a>.",
|
||||
"wrong_reset_code.title": "Λάθος Κώδικας Επαναφοράς",
|
||||
"wrong_reset_code.message": "Ο κώδικας επαναφοράς που λήφθηκε ήταν λανθασμένος. Παρακαλώ δοκίμασε ξανά ή <a href=\"/reset\">ζήτησε ένα νέο κώδικα επαναφοράς</a>.",
|
||||
"new_password": "Νέος Κωδικός",
|
||||
"repeat_password": "Επιβεβαίωση Κωδικού",
|
||||
"enter_email": "Παρακαλώ γράψε την <strong>διεύθυνση email σου</strong> και θα σου στείλουμε ένα email με οδηγίες για το πως να επαναφέρεις τον λογαριασμό σου.",
|
||||
"enter_email_address": "Εισαγωγή Διεύθυνσης Email",
|
||||
"password_reset_sent": "Η Επαναφορά Κωδικού Εστάλη",
|
||||
"invalid_email": "Άκυρο Email / Το email δεν υπάρχει!"
|
||||
}
|
||||
7
public/language/el/search.json
Normal file
7
public/language/el/search.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"results_matching": "%1 αποτελεσμα(τα) για \"%2\", (%3 δευτερόλεπτα)",
|
||||
"no-matches": "No matches found",
|
||||
"in": "In",
|
||||
"by": "By",
|
||||
"posted-by": "Posted by"
|
||||
}
|
||||
6
public/language/el/success.json
Normal file
6
public/language/el/success.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"success": "Επιτυχία",
|
||||
"topic-post": "Δημοσίευσες με επιτυχία.",
|
||||
"authentication-successful": "Επιτυχής Ταυτοποίηση",
|
||||
"settings-saved": "Οι επιλογές αποθηκεύτηκαν!"
|
||||
}
|
||||
7
public/language/el/tags.json
Normal file
7
public/language/el/tags.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"no_tag_topics": "Δεν υπάρχουν θέματα με αυτή την ετικέτα.",
|
||||
"tags": "Ετικέτες",
|
||||
"enter_tags_here": "Εισαγωγή ετικετών εδώ. Πάτα enter μετά από κάθε ετικέτα.",
|
||||
"enter_tags_here_short": "Εισαγωγή ετικετών...",
|
||||
"no_tags": "Δεν υπάρχουν ακόμα ετικέτες."
|
||||
}
|
||||
98
public/language/el/topic.json
Normal file
98
public/language/el/topic.json
Normal file
@@ -0,0 +1,98 @@
|
||||
{
|
||||
"topic": "Θέμα",
|
||||
"topic_id": "ID Θέματος",
|
||||
"topic_id_placeholder": "Εισαγωγή ID θέματος",
|
||||
"no_topics_found": "Δεν βρέθηκαν θέματα!",
|
||||
"no_posts_found": "Δεν βρέθηκαν δημοσιεύσεις!",
|
||||
"post_is_deleted": "Αυτή η δημοσίευση έχει διαγραφεί!",
|
||||
"profile": "Προφίλ",
|
||||
"posted_by": "Δημοσιεύτηκε από τον/την %1",
|
||||
"posted_by_guest": "Δημοσιεύτηκε από Επισκέπτη",
|
||||
"chat": "Συνομιλία",
|
||||
"notify_me": "Να ειδοποιούμαι για νέες απαντήσεις σε αυτό το θέμα",
|
||||
"quote": "Παράθεση",
|
||||
"reply": "Απάντηση",
|
||||
"edit": "Επεξεργασία",
|
||||
"delete": "Διαγραφή",
|
||||
"purge": "Εκκαθάριση",
|
||||
"restore": "Επαναφορά",
|
||||
"move": "Μετακίνηση",
|
||||
"fork": "Διαχωρισμός",
|
||||
"link": "Σύνδεσμος",
|
||||
"share": "Μοιράσου το",
|
||||
"tools": "Εργαλεία",
|
||||
"flag": "Σημαία",
|
||||
"locked": "Κλειδωμένο",
|
||||
"bookmark_instructions": "Κάνε κλικ εδώ για να επιστρέψεις στην τελευταία σου θέση ή κλείστο για να το πετάξεις.",
|
||||
"flag_title": "Επισήμανση αυτής της δημοσίευσης για συντονισμό",
|
||||
"flag_confirm": "Είσαι σίγουρος/η πως θες να επισημάνεις αυτή την δημοσίευση;",
|
||||
"flag_success": "Αυτή η δημοσίευση έχει επισημανθεί για συντονισμό.",
|
||||
"deleted_message": "Το θέμα αυτό έχει διαγραφεί. Μόνο οι χρήστες με δικαιώματα διαχειριστή θεμάτων μπορούν να το δουν.",
|
||||
"following_topic.message": "Θα λαμβάνεις ειδοποιήσεις όποτε κάποιος δημοσιεύει κάτι σε αυτό το θέμα.",
|
||||
"not_following_topic.message": "Δεν θα λαμβάνεις άλλες ειδοποιήσεις από αυτό το θέμα.",
|
||||
"login_to_subscribe": "Παρακαλώ εγγράψου ή συνδέσου για για γραφτείς σε αυτό το θέμα.",
|
||||
"markAsUnreadForAll.success": "Το θέμα σημειώθηκε ως μη αναγνωσμένο για όλους.",
|
||||
"watch": "Παρακολούθηση",
|
||||
"unwatch": "Ξεπαρακολούθηση",
|
||||
"watch.title": "Να ειδοποιούμαι για νέες απαντήσεις σε αυτό το θέμα",
|
||||
"unwatch.title": "Να μην παρακολουθώ αυτό το θέμα",
|
||||
"share_this_post": "Μοιράσου αυτή την Δημοσίευση",
|
||||
"thread_tools.title": "Εργαλεία Θέματος",
|
||||
"thread_tools.markAsUnreadForAll": "Σημείωση ως μη αναγνωσμέν",
|
||||
"thread_tools.pin": "Καρφίτσωμα Θέματος",
|
||||
"thread_tools.unpin": "Ξεκαρφίτσωμα Θέματος",
|
||||
"thread_tools.lock": "Κλείδωμα Θέματος",
|
||||
"thread_tools.unlock": "Ξεκλείδωμα Θέματος",
|
||||
"thread_tools.move": "Μετακίνηση Θέματος",
|
||||
"thread_tools.move_all": "Μετακίνηση Όλων",
|
||||
"thread_tools.fork": "Διαχωρισμός Θέματος",
|
||||
"thread_tools.delete": "Διαγραφή Θέματος",
|
||||
"thread_tools.delete_confirm": "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το θέμα;",
|
||||
"thread_tools.restore": "Επαναφορά Θέματος",
|
||||
"thread_tools.restore_confirm": "Είσαι σίγουρος/η πως θέλεις να επαναφέρεις αυτό το θέμα;",
|
||||
"thread_tools.purge": "Εκκαθάριση Θέματος",
|
||||
"thread_tools.purge_confirm": "Είσαι σίγουρος/η πως θέλεις να εκκαθαρίσεις αυτό το θέμα;",
|
||||
"topic_move_success": "Το θέμα μετακινήθηκε στο %1 με επιτυχία",
|
||||
"post_delete_confirm": "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτή την δημοσίευση;",
|
||||
"post_restore_confirm": "Είσαι σίγουρος/η πως θέλεις να επαναφέρεις αυτή την δημοσίευση;",
|
||||
"post_purge_confirm": "Είσαι σίγουρος/η πως θέλεις να εκκαθαρίσεις αυτή την δημοσίευση;",
|
||||
"load_categories": "Οι Κατηγορίες Φορτώνουν",
|
||||
"disabled_categories_note": "Οι απενεργοποιημένες κατηγορίες είναι γκριζαρισμένες",
|
||||
"confirm_move": "Μετακίνηση",
|
||||
"confirm_fork": "Διαχωρισμός",
|
||||
"favourite": "Αγαπημένο",
|
||||
"favourites": "Αγαπημένα",
|
||||
"favourites.has_no_favourites": "Δεν έχεις καθόλου αγαπημένα, βάλε μερικές δημοσιεύσεις στα αγαπημένα σου για να τις βλέπεις εδώ!",
|
||||
"loading_more_posts": "Φόρτωση περισσότερων δημοσιεύσεων",
|
||||
"move_topic": "Μετακίνηση Θέματος",
|
||||
"move_topics": "Μετακίνηση Θεμάτων",
|
||||
"move_post": "Μετακίνηση Δημοσίευσης",
|
||||
"post_moved": "Η δημοσίευση μετακινήθηκε!",
|
||||
"fork_topic": "Διαχωρισμός Θέματος",
|
||||
"topic_will_be_moved_to": "Το θέμα θα μετακινηθεί στην κατηγορία",
|
||||
"fork_topic_instruction": "Κάνε κλικ στις δημοσιεύσεις που θέλεις να διαχωρίσεις",
|
||||
"fork_no_pids": "Δεν έχουν επιλεχθεί δημοσιεύσεις!",
|
||||
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
|
||||
"composer.title_placeholder": "Εισαγωγή του τίτλου του θέματος εδώ...",
|
||||
"composer.handle_placeholder": "Name",
|
||||
"composer.discard": "Πέταγμα",
|
||||
"composer.submit": "Υποβολή",
|
||||
"composer.replying_to": "Απάντηση στο %1",
|
||||
"composer.new_topic": "Νέο Θέμα",
|
||||
"composer.uploading": "ανέβασμα...",
|
||||
"composer.thumb_url_label": "Επικόλληση του URL της εικόνας του θέματος",
|
||||
"composer.thumb_title": "Προσθήκη μιας εικόνας στο θέμα",
|
||||
"composer.thumb_url_placeholder": "http://example.com/thumb.png",
|
||||
"composer.thumb_file_label": "Ή ανέβασε ένα αρχείο",
|
||||
"composer.thumb_remove": "Καθαρισμός Πεδίων",
|
||||
"composer.drag_and_drop_images": "Σύρε εικόνες εδώ",
|
||||
"more_users_and_guests": "%1 επιπλέον χρήστης(ες) και %2 επισκέπτης(ες)",
|
||||
"more_users": "%1 επιπλέον χρήστης(ες)",
|
||||
"more_guests": "%1 επιπλέον επισκέπτης(ες)",
|
||||
"users_and_others": "%1 και %2 άλλοι",
|
||||
"sort_by": "Ταξινόμηση κατά",
|
||||
"oldest_to_newest": "Παλαιότερο προς Νεότερο",
|
||||
"newest_to_oldest": "Νεότερο προς Παλαιότερο",
|
||||
"most_votes": "Περισσότερες ψήφοι",
|
||||
"most_posts": "Most posts"
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user