mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-12-17 14:00:29 +01:00
Compare commits
1635 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
accee7d05b | ||
|
|
f403a297b4 | ||
|
|
73e7da6f03 | ||
|
|
9c1b24c963 | ||
|
|
0d223ef88d | ||
|
|
87435c1a9e | ||
|
|
ce24c6dc04 | ||
|
|
4b1b98e229 | ||
|
|
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 | ||
|
|
3d5e72bbc8 | ||
|
|
9909f8ba79 | ||
|
|
18462c4190 | ||
|
|
698d113857 | ||
|
|
eaf89dc316 | ||
|
|
a4d671f8b8 | ||
|
|
238fb0bd4b | ||
|
|
c74370bfb1 | ||
|
|
c4a39c8163 | ||
|
|
782896997d | ||
|
|
56947b999e | ||
|
|
d2cc4b8516 | ||
|
|
35e2e1462b | ||
|
|
63cf8d674d | ||
|
|
dfae2ea0d7 | ||
|
|
699b74603b | ||
|
|
4c90c9a759 | ||
|
|
ca9cc6b32f | ||
|
|
081efd22e2 | ||
|
|
a7bb5893e8 | ||
|
|
0a81898810 | ||
|
|
a9c528eb23 | ||
|
|
9215930cfc | ||
|
|
6e62c48f41 | ||
|
|
89613d2346 | ||
|
|
a8760cd2bc | ||
|
|
c753edab1d | ||
|
|
ffdc4b5d24 | ||
|
|
8112ca73c8 | ||
|
|
f295083a08 | ||
|
|
802c8b15e2 | ||
|
|
9a21e9646f | ||
|
|
67770e568f | ||
|
|
b95710b2c9 | ||
|
|
a9a32bff50 | ||
|
|
c5224d099e | ||
|
|
fd00dddd62 | ||
|
|
aac923fb03 | ||
|
|
62d85b0e26 | ||
|
|
8468a84047 | ||
|
|
07a54b9510 | ||
|
|
afa86c03c4 | ||
|
|
ec9bf48477 | ||
|
|
a28b4bb8b9 | ||
|
|
1a90de7dd6 | ||
|
|
ebfb953069 | ||
|
|
dcf2691a12 | ||
|
|
591a8b6b12 | ||
|
|
1b80e6dbb2 | ||
|
|
55a5d56989 | ||
|
|
3e4b6c97a0 | ||
|
|
b5fe2c7b91 | ||
|
|
b23373c265 | ||
|
|
f15631c3e1 | ||
|
|
6dd035a5af | ||
|
|
7de9b998b5 | ||
|
|
3f28dbb1be | ||
|
|
224218f519 | ||
|
|
e9ec225d5b | ||
|
|
4db31be7e3 | ||
|
|
304f5b1c76 | ||
|
|
6802bf7ce9 | ||
|
|
2d238e61ac | ||
|
|
c2fb1eaabf | ||
|
|
b209fb563e | ||
|
|
794d6eb9ab | ||
|
|
94ffe5d170 | ||
|
|
02f74ca032 | ||
|
|
1eb1eb6844 | ||
|
|
ded8de905d | ||
|
|
d2334fbb4a | ||
|
|
93d4a7c1f1 | ||
|
|
6cb5f9c098 | ||
|
|
c5e1f8e0aa | ||
|
|
7bf655541c | ||
|
|
cfd7edbf34 | ||
|
|
24de757549 | ||
|
|
b5fb7691cd | ||
|
|
75aa3f1006 | ||
|
|
8ef4ad6f14 | ||
|
|
59b3e6f78f | ||
|
|
3ba4d2aa2b | ||
|
|
fec84821b7 | ||
|
|
762b2fff37 | ||
|
|
df590d01e6 | ||
|
|
9e8be432b3 | ||
|
|
d01497dde3 | ||
|
|
3ff7719cd4 | ||
|
|
eb546dfaab | ||
|
|
834c4f8ff0 | ||
|
|
80489c6564 | ||
|
|
90224d2de3 | ||
|
|
f2883c2c9f | ||
|
|
1be6a253bf | ||
|
|
72a919e416 | ||
|
|
f318f2f815 | ||
|
|
b3e83d2f9a | ||
|
|
8471fcbd79 | ||
|
|
4b1adba9ec | ||
|
|
ffbefda5f7 | ||
|
|
761f56aeb1 | ||
|
|
09bd42b9f6 | ||
|
|
b1d48df6d8 | ||
|
|
5de74914bd | ||
|
|
b65c17c5bc | ||
|
|
29fcb6c366 | ||
|
|
040d7b8424 | ||
|
|
0eae679bcd | ||
|
|
be287740f9 | ||
|
|
62503c16c6 | ||
|
|
b5481ceed2 | ||
|
|
08d4d6b5bf | ||
|
|
f463030e76 | ||
|
|
835c58d27d | ||
|
|
6ff00a935f | ||
|
|
2b0957b8c7 | ||
|
|
40fe40deac | ||
|
|
62d0e08d6a | ||
|
|
129a438ebe | ||
|
|
fced152e41 | ||
|
|
be0d043b2b | ||
|
|
27833a3e91 | ||
|
|
97dba9ae39 | ||
|
|
3c25204fdd | ||
|
|
e699c02b65 | ||
|
|
10ead05d4b | ||
|
|
8cc1cc0f1b | ||
|
|
1eb95a71ae | ||
|
|
2b15de63c0 | ||
|
|
35fc175ff6 | ||
|
|
2c95d8d82e | ||
|
|
91e11e304f | ||
|
|
feed33f6e2 | ||
|
|
035c32df66 | ||
|
|
b0ec0f52a4 | ||
|
|
e6b8c0b32f | ||
|
|
7ee6f1d01c | ||
|
|
1226a2462a | ||
|
|
a24dde863b | ||
|
|
4268d424a3 | ||
|
|
e052d8e5c1 | ||
|
|
ffcb324d91 | ||
|
|
cad3f3017c | ||
|
|
e95c68e7d6 | ||
|
|
29d90bc67d | ||
|
|
07a5aeaf15 | ||
|
|
e9c48f50f9 | ||
|
|
dcd47f7ec5 | ||
|
|
3819d11be2 | ||
|
|
4cbb7e9832 | ||
|
|
c787cd671b | ||
|
|
2f150649ae | ||
|
|
142ffc2920 | ||
|
|
b7bba928a4 | ||
|
|
0d95089bfe | ||
|
|
4190b3c41c | ||
|
|
97b9ba983c | ||
|
|
00ff032060 | ||
|
|
73220aaa3d | ||
|
|
2906ac9ecf | ||
|
|
ce30379c25 | ||
|
|
4126fcfce4 | ||
|
|
1a04d8f07d | ||
|
|
5dbd4bcda9 | ||
|
|
5d79d2a75a | ||
|
|
cb934acb5d | ||
|
|
206b54c35d | ||
|
|
424efbeb06 | ||
|
|
124576f843 | ||
|
|
5dcd610c1a | ||
|
|
3f876548ba | ||
|
|
7a53205c76 | ||
|
|
b17740f8d7 | ||
|
|
b42e57bfdd | ||
|
|
daf967399f | ||
|
|
d63f2ccd28 | ||
|
|
c4a5af3b1b | ||
|
|
e1c3bc9713 | ||
|
|
8abf2835a5 | ||
|
|
339d2b0143 | ||
|
|
ffc07ff6d2 | ||
|
|
d759a7d9dd | ||
|
|
a2377d4682 | ||
|
|
ed60deb3f5 | ||
|
|
0f759f9df4 | ||
|
|
b51c90dcb3 | ||
|
|
006322f386 | ||
|
|
e1f67052d0 | ||
|
|
0d741f0031 | ||
|
|
f35a51e48d | ||
|
|
6418948570 | ||
|
|
ae635a0083 | ||
|
|
2f53a3acc9 | ||
|
|
3a069e028b | ||
|
|
61c73b7761 | ||
|
|
4dcecbb310 | ||
|
|
1d1625f5c4 | ||
|
|
b1b25ada4d | ||
|
|
2b5c3275f3 | ||
|
|
396fecb94a | ||
|
|
f149fb0191 | ||
|
|
729ed6fbda | ||
|
|
f4b5090738 | ||
|
|
27496a08c4 | ||
|
|
94ec07eb73 | ||
|
|
fd95ac096d | ||
|
|
c2d21de9ac | ||
|
|
61b8c7f673 | ||
|
|
5376f07f6c | ||
|
|
85e0d1c03f | ||
|
|
01b8d1472e | ||
|
|
d632ba2242 | ||
|
|
4b295decf8 | ||
|
|
eb4baf62b5 | ||
|
|
298625225a | ||
|
|
7bd49a96b2 | ||
|
|
3b511b59cb | ||
|
|
1bdb80ce0a | ||
|
|
3c97829e85 | ||
|
|
712bd3938f | ||
|
|
e0fd24c087 | ||
|
|
ea2fbcfcfc | ||
|
|
cf22fad6fd | ||
|
|
8a978e46de | ||
|
|
7396c363d7 | ||
|
|
b2866abf5c | ||
|
|
f6f6ca7f76 | ||
|
|
c57dc25ea7 | ||
|
|
0912c7a2aa | ||
|
|
ad4fff649c | ||
|
|
26cfe4a3c3 | ||
|
|
0772e8c41f | ||
|
|
b481a28b6e | ||
|
|
394a01fdef | ||
|
|
c827485de5 | ||
|
|
d7c796fba5 | ||
|
|
53fdef1d17 | ||
|
|
345896e8eb | ||
|
|
85da5fb054 | ||
|
|
6ca06a8e54 | ||
|
|
348911fd2d | ||
|
|
bc1281a201 | ||
|
|
e35dd60f8f | ||
|
|
ccf58ed40e | ||
|
|
258e14e20c | ||
|
|
2a2490541f | ||
|
|
31b2faf2c5 | ||
|
|
84b9b86dd1 | ||
|
|
d70aab6a1e | ||
|
|
89e4a67e95 | ||
|
|
1b2ccda40b | ||
|
|
bf852d8329 | ||
|
|
c14b5e3d3a | ||
|
|
319defd1d2 | ||
|
|
fa8613d09d | ||
|
|
872e28099f | ||
|
|
edf37f3e0c | ||
|
|
27c214486b | ||
|
|
5681d51778 | ||
|
|
39de76fa5c | ||
|
|
901ef3d382 | ||
|
|
39e59ee918 | ||
|
|
ced0087347 | ||
|
|
307a04c162 | ||
|
|
ba4392cda0 | ||
|
|
cf5ac4fb74 | ||
|
|
31a1f85a7e | ||
|
|
3accfaebc9 | ||
|
|
03f926c560 | ||
|
|
bc016321ac | ||
|
|
ba9da2b256 | ||
|
|
a4f7ad3161 | ||
|
|
eb5630caa7 | ||
|
|
44b39bc69d | ||
|
|
04b7dfeb02 | ||
|
|
a6481aefe3 | ||
|
|
7a2ccf6031 | ||
|
|
a474f111a3 | ||
|
|
9c67d5742e | ||
|
|
cea23454c6 | ||
|
|
13c9da6bff | ||
|
|
a23b0baf25 | ||
|
|
bcdb87f488 | ||
|
|
06db3c1c3d | ||
|
|
16a4824017 | ||
|
|
e86697b36f | ||
|
|
4b9e4a0109 | ||
|
|
1644c1f9e9 | ||
|
|
e211628419 | ||
|
|
2db93c9219 | ||
|
|
2148e24969 | ||
|
|
60c45d8b9b | ||
|
|
5db24fbe68 | ||
|
|
c37cfe4b3f | ||
|
|
f5f84d9946 | ||
|
|
740c336480 | ||
|
|
dba20160ce | ||
|
|
1b3b13716a | ||
|
|
19c69980ef | ||
|
|
33780e6fdb | ||
|
|
73d358edc5 | ||
|
|
43806e5921 | ||
|
|
0e3c5195db | ||
|
|
b7ba6a0d8f | ||
|
|
ee289c3226 | ||
|
|
b4fb2d62a3 | ||
|
|
6a996bd718 | ||
|
|
8737c5a56d | ||
|
|
eab180f305 | ||
|
|
c72c876b04 | ||
|
|
4c70a0da4f | ||
|
|
c12b159bb5 | ||
|
|
806b115782 | ||
|
|
6a6f0a3b78 | ||
|
|
e20747c191 | ||
|
|
9c8395808c | ||
|
|
24ac7ba316 | ||
|
|
6f40a731f5 | ||
|
|
2af077544b | ||
|
|
32d0e0d7e5 | ||
|
|
974a091f1b | ||
|
|
7243aebee0 | ||
|
|
6aa53b8323 | ||
|
|
5ba88b7152 | ||
|
|
e5681097f4 | ||
|
|
bc4969be5b | ||
|
|
9d53de5f70 | ||
|
|
42d3656ecc | ||
|
|
85048a5f75 | ||
|
|
1eb9016a77 | ||
|
|
043a73b4ae | ||
|
|
de98df842d | ||
|
|
a67c501eb8 | ||
|
|
7b8656ef8b | ||
|
|
b8df95da98 | ||
|
|
6165db3e00 | ||
|
|
883422760d | ||
|
|
cf252a29a7 | ||
|
|
977cd98a79 | ||
|
|
e6824fd727 | ||
|
|
f082849126 | ||
|
|
43db2289c2 | ||
|
|
35ac6600ba | ||
|
|
f41b0fe3ce | ||
|
|
5ff293109d | ||
|
|
4f2603afd1 | ||
|
|
31db0d78b1 | ||
|
|
7cde61f4d6 | ||
|
|
b31feac253 | ||
|
|
ab915b6ed7 | ||
|
|
05ff80b2e0 | ||
|
|
52229113b6 | ||
|
|
3865fd3ab9 | ||
|
|
bfc9cae1b2 | ||
|
|
0aa08f8bd9 | ||
|
|
178aa473fc | ||
|
|
3e7f0531b4 | ||
|
|
199a13d730 | ||
|
|
c792fc68d3 | ||
|
|
6b786012d8 | ||
|
|
c9228f1483 | ||
|
|
343ff18014 | ||
|
|
2b115e75c6 | ||
|
|
62084a012e | ||
|
|
30b2f55ebc | ||
|
|
2b5d0e89a5 | ||
|
|
1e5c172f5e | ||
|
|
a505896185 | ||
|
|
18cfdd9dde | ||
|
|
653865a214 | ||
|
|
e79e370e59 | ||
|
|
d0452fb93f | ||
|
|
632fb3a618 | ||
|
|
b877a4e7b4 | ||
|
|
f86e4256a1 | ||
|
|
7b9815aa3b | ||
|
|
29d99a0ecf | ||
|
|
9c996e4b99 | ||
|
|
219cd9661f | ||
|
|
4b5112e60a | ||
|
|
95740ae8f9 | ||
|
|
6867c10058 | ||
|
|
b9ac2a3207 | ||
|
|
2a1f9600e6 | ||
|
|
8c9d362535 | ||
|
|
456f087dea | ||
|
|
6a8ccf1ad5 | ||
|
|
dedf7a6715 | ||
|
|
d303dea6c7 | ||
|
|
8b0685754e | ||
|
|
2388f8b815 | ||
|
|
625247611b | ||
|
|
318e4b5f6b | ||
|
|
2f9193c419 | ||
|
|
8d149cb2ee | ||
|
|
3b48668385 | ||
|
|
587f805763 | ||
|
|
186790f2ba | ||
|
|
cb84b79bbc | ||
|
|
3634cebff7 | ||
|
|
a46006ba64 | ||
|
|
6fb596c1c6 | ||
|
|
51c3f0d77a | ||
|
|
4fafc6804a | ||
|
|
c260d4e1c0 | ||
|
|
3104cfb26b | ||
|
|
c18f4998fd | ||
|
|
b34ec8d732 | ||
|
|
f549ef8e26 | ||
|
|
af0cdeef14 | ||
|
|
37c64e9a11 | ||
|
|
744c55e776 | ||
|
|
e012479ab5 | ||
|
|
a59934fd65 | ||
|
|
c2fd89e050 | ||
|
|
e8dc9fed3c | ||
|
|
81bc481efc | ||
|
|
ca4047dc4a | ||
|
|
ad47874bd3 | ||
|
|
ed35e4bcef | ||
|
|
341959be82 | ||
|
|
6a9b131223 | ||
|
|
2cebeeb1ca | ||
|
|
385632e173 | ||
|
|
0ebe4381b2 | ||
|
|
df2227259b | ||
|
|
d4b5ea4e1a | ||
|
|
668b17082d | ||
|
|
4af54d48f6 | ||
|
|
2ec93ba911 | ||
|
|
0d01b0a734 | ||
|
|
cd99654477 | ||
|
|
dfcb8b9427 | ||
|
|
348f1cdbc7 | ||
|
|
d5dbc367fb | ||
|
|
6f3fafba46 | ||
|
|
212e15b2c2 | ||
|
|
1d4710edce | ||
|
|
e2e71da4e1 | ||
|
|
2bc7007953 | ||
|
|
70831f5888 | ||
|
|
c2d97d8ea7 | ||
|
|
d79b6b3803 | ||
|
|
6535a730fd | ||
|
|
34106aa209 | ||
|
|
5fc760c6c4 | ||
|
|
2b329b8337 | ||
|
|
144992426d | ||
|
|
80ca6bb0a2 | ||
|
|
9d25772b53 | ||
|
|
0b99244dfc | ||
|
|
99d98a7016 | ||
|
|
077dcaf704 | ||
|
|
176023d712 | ||
|
|
1e016d1aff | ||
|
|
34a2444f07 | ||
|
|
0fa04cf9a0 | ||
|
|
9ae1675701 | ||
|
|
d6757c1085 | ||
|
|
4b1afa8a8c | ||
|
|
3a34f508f1 | ||
|
|
c5f9a8a111 | ||
|
|
c5c97c784a | ||
|
|
998ed24589 | ||
|
|
00269853f3 | ||
|
|
3635cd21aa | ||
|
|
2b90180e01 | ||
|
|
104b1daf2d | ||
|
|
10a683f369 | ||
|
|
59dae5eac0 | ||
|
|
070039f8b8 | ||
|
|
e4d51fbca0 | ||
|
|
c3336e4713 | ||
|
|
1952149b4c | ||
|
|
a348eded57 | ||
|
|
eecf7b9dd5 | ||
|
|
89592618e3 | ||
|
|
6a389e1d1c | ||
|
|
eb9b628a75 | ||
|
|
a258f2b20b | ||
|
|
362b57a88e | ||
|
|
d201f0fd23 | ||
|
|
f44213ea97 | ||
|
|
ab90d7b9d4 | ||
|
|
1616b8d3dd | ||
|
|
4880e2328d | ||
|
|
e13537facd | ||
|
|
e63a7c462c | ||
|
|
06b4e84fc1 | ||
|
|
bc574b0e2b | ||
|
|
3cf833acb9 | ||
|
|
e91b7a1677 | ||
|
|
a832af231a | ||
|
|
c60cbce14a | ||
|
|
2f6a123d32 | ||
|
|
660cd184f4 | ||
|
|
a621d4212e | ||
|
|
15b3437dba | ||
|
|
d902ac1efe | ||
|
|
3854c883a2 | ||
|
|
8b9d58a72f | ||
|
|
d5316dbe7a | ||
|
|
74c69842d1 | ||
|
|
958432ca4a | ||
|
|
6e8bd4d615 | ||
|
|
9240d38c4c | ||
|
|
3554887f10 | ||
|
|
ebfc6d9785 | ||
|
|
5f55cc947c | ||
|
|
b27af65f18 | ||
|
|
606263ace4 | ||
|
|
97e4f13a4d | ||
|
|
1202322700 | ||
|
|
f53d783d3d | ||
|
|
3be951367f | ||
|
|
06fd0fa34b | ||
|
|
c2c569695f | ||
|
|
a17cd6aacc | ||
|
|
0eb4b93882 | ||
|
|
d4f47f4157 | ||
|
|
62312638ed | ||
|
|
b468404506 | ||
|
|
f98e3aaf64 | ||
|
|
27bd23ca5c | ||
|
|
cf35423a20 | ||
|
|
6af1e4f6d0 | ||
|
|
0340f699a0 | ||
|
|
0a4deeabf8 | ||
|
|
4e7f22a674 | ||
|
|
282dc64fa5 | ||
|
|
27a2af89c8 | ||
|
|
5a36c33fac | ||
|
|
1a18bf22aa | ||
|
|
5d1906cd0c | ||
|
|
12af6a33b5 | ||
|
|
467d486e58 | ||
|
|
99a56acab8 | ||
|
|
b0323e4d3b | ||
|
|
dfccf6675a | ||
|
|
d081ecf368 | ||
|
|
da0eff6a4e | ||
|
|
c692f7e8fe | ||
|
|
05b8b4b43a | ||
|
|
fe444ccac7 | ||
|
|
366c7841fe | ||
|
|
9a1fe2e2cc | ||
|
|
6f937c59fb | ||
|
|
11fada047e | ||
|
|
1fe5a8788f | ||
|
|
412263f430 | ||
|
|
af2b66f438 | ||
|
|
e336188ccc | ||
|
|
81ce7f93ad | ||
|
|
28efeef844 | ||
|
|
bb9a0d8cab | ||
|
|
c000e852b5 | ||
|
|
016a98e7b1 | ||
|
|
7c896768ce | ||
|
|
13dd686521 | ||
|
|
027e8eb54c | ||
|
|
977bc014f9 | ||
|
|
73faa79a69 | ||
|
|
da64eb0873 | ||
|
|
5d344b3dac | ||
|
|
9f40cd03e8 | ||
|
|
117b8dece4 | ||
|
|
9b17ec9f26 | ||
|
|
bd4ab2a24c | ||
|
|
6abb0ff4c8 | ||
|
|
1a26cb0938 | ||
|
|
64b43d58ea | ||
|
|
4eabf41a21 | ||
|
|
bedadd8b5f | ||
|
|
23197af725 | ||
|
|
da2725ec8a | ||
|
|
bc116c16e9 | ||
|
|
ecea917d11 | ||
|
|
20819e3dfd | ||
|
|
8abb247870 | ||
|
|
f41be4ae8b | ||
|
|
b1f492dec3 | ||
|
|
e1211527b0 | ||
|
|
d7a69e51c1 | ||
|
|
528ee3ad05 | ||
|
|
64c51d5cba | ||
|
|
50a7c42f15 | ||
|
|
05e147b440 | ||
|
|
abdcb32ad2 | ||
|
|
a0da73dabd | ||
|
|
180625ece3 | ||
|
|
77dfc7378b | ||
|
|
0eb4fd89ef | ||
|
|
fb764472dd | ||
|
|
901470ce05 | ||
|
|
0767998022 | ||
|
|
99bacf910c | ||
|
|
7f2254c9da | ||
|
|
b6f7014a9d | ||
|
|
a6abde2a2b | ||
|
|
48c3619028 | ||
|
|
2d5dc44ce5 | ||
|
|
515e663f85 | ||
|
|
39392672a2 | ||
|
|
9b9e79ef27 | ||
|
|
bfdc32a9c3 | ||
|
|
0db93504ce | ||
|
|
2b90add560 | ||
|
|
8b64e65095 | ||
|
|
21f65cbb6a | ||
|
|
c640e01969 | ||
|
|
8c600ae15d | ||
|
|
ba90b5d113 | ||
|
|
7597c654a0 | ||
|
|
5f2a66295c | ||
|
|
0914004e12 | ||
|
|
d1273516b5 | ||
|
|
7d9054c2cf | ||
|
|
7d93926ef7 | ||
|
|
5323934cc2 | ||
|
|
b7fd4c22d4 | ||
|
|
a19c306f49 | ||
|
|
e2707353e9 | ||
|
|
a52c69d2a1 | ||
|
|
f891f49339 | ||
|
|
dab3667773 | ||
|
|
ac301eaabe | ||
|
|
4de658e096 | ||
|
|
3d4dad226e | ||
|
|
59120df71c | ||
|
|
630977fb99 | ||
|
|
89e56794e8 | ||
|
|
d13fcd3529 | ||
|
|
f3f4711a60 | ||
|
|
aee8b87385 | ||
|
|
327d1c1bec | ||
|
|
f0d3b5dd00 | ||
|
|
2bcd43531a | ||
|
|
4393907ff6 | ||
|
|
bae634e124 | ||
|
|
1bad2f79ee | ||
|
|
7652f2bf39 | ||
|
|
c32fdabc43 | ||
|
|
803a2436de | ||
|
|
1844250967 | ||
|
|
93b83060be | ||
|
|
251351e245 | ||
|
|
efe11a63a3 | ||
|
|
9e7f929029 | ||
|
|
55cbaf6a19 | ||
|
|
8f916ed066 | ||
|
|
6844c828ca | ||
|
|
926acd16b2 | ||
|
|
f377868764 | ||
|
|
63a7766ac1 | ||
|
|
0f258859a7 | ||
|
|
309ac6fec5 | ||
|
|
7a61e9d0f8 | ||
|
|
16accf6cd0 | ||
|
|
6f3cb55709 | ||
|
|
2c1bab2b9a | ||
|
|
45383ce21e | ||
|
|
c1f3b94d67 | ||
|
|
a0cc2ee6a9 | ||
|
|
3abbeb8795 | ||
|
|
2e16306dc2 | ||
|
|
4066607388 | ||
|
|
cd135dda13 | ||
|
|
0b7a21b8d1 | ||
|
|
8bac0bf361 | ||
|
|
a061079995 | ||
|
|
1caf4806e8 | ||
|
|
004758f5bd | ||
|
|
91293350b5 | ||
|
|
4f6b3055ff | ||
|
|
d6e0be52ce | ||
|
|
aa116e6b4d | ||
|
|
e9b373438d | ||
|
|
74c438dc71 | ||
|
|
a6089ba4aa | ||
|
|
ca7f35dd5e | ||
|
|
40fff367d1 | ||
|
|
4b80bbb9c4 | ||
|
|
6a64a3ab92 | ||
|
|
b48d81310c | ||
|
|
aae7f2434d | ||
|
|
b80b0e1e99 | ||
|
|
b85ff61de6 | ||
|
|
451c5b40fd | ||
|
|
97cb138cfc | ||
|
|
a224e531f8 | ||
|
|
ae88eee8e3 | ||
|
|
ca486a1b07 | ||
|
|
0a936e5dd1 | ||
|
|
48c123592e | ||
|
|
45a0d0196b | ||
|
|
101288c75c | ||
|
|
e60d88afa6 | ||
|
|
101ac701ef | ||
|
|
32a35164d4 | ||
|
|
51eac70f67 | ||
|
|
32257c9b2f | ||
|
|
22577917da | ||
|
|
ab1c231b84 | ||
|
|
ecd00bb679 | ||
|
|
0ecaa05c76 | ||
|
|
76fb2c3378 | ||
|
|
e5978e09f4 | ||
|
|
963428174b | ||
|
|
52bb7ebe52 | ||
|
|
6ade1e858d | ||
|
|
31631ca538 | ||
|
|
ce0fdc201a | ||
|
|
31eccb8e7f | ||
|
|
9a96458f79 | ||
|
|
da86c46b4c | ||
|
|
7c3dc4877a | ||
|
|
84d4035597 | ||
|
|
6e21b7a830 | ||
|
|
9cba8d7ecb | ||
|
|
d22fe4ad1e | ||
|
|
51cefb00d2 | ||
|
|
cca365432b | ||
|
|
6bb924f25a | ||
|
|
82e721e854 | ||
|
|
655f5087d9 | ||
|
|
e10fbfa0d2 | ||
|
|
f1d5db6be0 | ||
|
|
ddb02978c8 | ||
|
|
e56b18822b | ||
|
|
b3d9db10f2 | ||
|
|
9466d7ced4 | ||
|
|
35a903f9c8 | ||
|
|
5204dc1e23 | ||
|
|
523f245cd8 | ||
|
|
7a61645256 | ||
|
|
dc441c2873 | ||
|
|
4e6719e0aa | ||
|
|
493d0dea1e | ||
|
|
f231b500d7 | ||
|
|
40e5ad075f | ||
|
|
6bde9a1656 | ||
|
|
e34ef71acd | ||
|
|
01f983e29c | ||
|
|
ae02c1a06c | ||
|
|
61871fae77 | ||
|
|
e738d592dc | ||
|
|
52b58b441e | ||
|
|
25ed131b13 | ||
|
|
e9798028de | ||
|
|
5696ea2396 | ||
|
|
b7eddda8c8 | ||
|
|
20eb4def1d | ||
|
|
e79c980421 | ||
|
|
5222edb624 | ||
|
|
f16ced6bcc | ||
|
|
aed9a9f76f | ||
|
|
9b26b60082 | ||
|
|
61e1c51ef6 | ||
|
|
a56ab7f15a | ||
|
|
242721c73f | ||
|
|
6cd84ebe81 | ||
|
|
3c8ca63608 | ||
|
|
ec32a3d243 | ||
|
|
0727c2a0bf | ||
|
|
2252ab7479 | ||
|
|
273db693e7 | ||
|
|
cc3786e22d | ||
|
|
b7ee875b12 | ||
|
|
fe58ea55d4 | ||
|
|
57e204df8e | ||
|
|
0ad42873d5 | ||
|
|
4b20e78de2 | ||
|
|
3f4ede0778 | ||
|
|
518d731562 | ||
|
|
f9c9f58561 | ||
|
|
34a4a2103f | ||
|
|
edd73b5be2 | ||
|
|
5160a4f90f | ||
|
|
ef329c95df | ||
|
|
0b83657868 | ||
|
|
0d5605ab35 | ||
|
|
126b1c4f4c | ||
|
|
0cfa430444 | ||
|
|
017f6bde2c | ||
|
|
7405051924 | ||
|
|
5fd199ae8a | ||
|
|
51cafe075c | ||
|
|
099a04c1c8 | ||
|
|
07376c9a4c | ||
|
|
6aa47efc06 | ||
|
|
0de458141b | ||
|
|
61895633b3 | ||
|
|
056f89d6cf | ||
|
|
071be4ae7f | ||
|
|
15052143d3 | ||
|
|
6c7d7a45e8 | ||
|
|
4fd9b58a55 | ||
|
|
a4c625a4d6 | ||
|
|
bf67424fd6 | ||
|
|
e2697030ec | ||
|
|
3f96532c3f | ||
|
|
072db27a3c | ||
|
|
a48e95b910 | ||
|
|
779b2a8d73 | ||
|
|
421d091828 | ||
|
|
0dc780148a | ||
|
|
8e86f4b787 | ||
|
|
a6f8bcd7be | ||
|
|
9fac18c4b6 | ||
|
|
ff44819d6b | ||
|
|
9ee4c90548 | ||
|
|
bc00d7d159 | ||
|
|
ba32a4dc4f | ||
|
|
7255ce3dbe | ||
|
|
2efb816da3 | ||
|
|
1075305444 | ||
|
|
7361aec709 | ||
|
|
877cf1e15c | ||
|
|
95d1bd3058 | ||
|
|
769d6ed57c | ||
|
|
2008bf28ff | ||
|
|
190647a074 | ||
|
|
e28d778c0c | ||
|
|
31fb0efbd9 | ||
|
|
707a062661 | ||
|
|
fae169697e | ||
|
|
94a3ecdbd1 | ||
|
|
2d0877f80e | ||
|
|
9a908c1651 | ||
|
|
fd0622a1a3 | ||
|
|
fec3ae7e5e | ||
|
|
0b2df849bd | ||
|
|
98f338b41c | ||
|
|
e5a35ce378 | ||
|
|
08abbe19bc | ||
|
|
3918b29233 | ||
|
|
8a996c4524 | ||
|
|
c62f251afc | ||
|
|
e5795687bb | ||
|
|
0bc9437642 | ||
|
|
956a431950 | ||
|
|
45afe2e831 | ||
|
|
8baea1a251 | ||
|
|
c8692f0562 | ||
|
|
f81acd37db | ||
|
|
3360752c5c | ||
|
|
84d0e64361 | ||
|
|
10b30e303b | ||
|
|
dc9754d77a | ||
|
|
baaac66d77 | ||
|
|
705bdcdd69 | ||
|
|
f609b1e45d | ||
|
|
05a9e8b1d6 | ||
|
|
20b951b9d9 | ||
|
|
fdafb72c34 | ||
|
|
999da9183d | ||
|
|
de41896770 | ||
|
|
4736a68534 | ||
|
|
9f0fff4434 | ||
|
|
c40355b816 | ||
|
|
b5da0e515b | ||
|
|
a5423aff16 | ||
|
|
baf72249b6 | ||
|
|
063d270f1a | ||
|
|
298f14ad27 | ||
|
|
0f46051fcf | ||
|
|
5362863588 | ||
|
|
2073d994fc | ||
|
|
6926552e66 | ||
|
|
1b58fb3104 | ||
|
|
58a73b52b5 | ||
|
|
94d050fd4f | ||
|
|
e00124007f | ||
|
|
cbe3b5b6dc | ||
|
|
e6d0eede4f | ||
|
|
4f48f1865f | ||
|
|
6b39e328f5 | ||
|
|
e495db3065 | ||
|
|
c56a7bf475 | ||
|
|
77475bb7a3 | ||
|
|
625766ba85 | ||
|
|
440c78c949 | ||
|
|
fb45aa92fd | ||
|
|
26c0b097cf | ||
|
|
74282ffeea | ||
|
|
a7736d1926 | ||
|
|
171f02101d | ||
|
|
ff46d1211d | ||
|
|
6672f17fc2 | ||
|
|
761d59f5ec | ||
|
|
b8dfbdaff2 | ||
|
|
8b4c61241f | ||
|
|
0c8c6632d9 | ||
|
|
487793e692 | ||
|
|
13bdd939e3 | ||
|
|
619ca103c7 | ||
|
|
1ed4c984bb | ||
|
|
0b79a73732 | ||
|
|
43ca61de8c | ||
|
|
ae6d5e72f4 | ||
|
|
a252bf409c | ||
|
|
6c2ae0302d | ||
|
|
fa2bf7c908 | ||
|
|
ff24339b38 | ||
|
|
4edceb0f92 | ||
|
|
caa9c8c157 | ||
|
|
08c9cbdf70 | ||
|
|
7572c9a803 | ||
|
|
298d904d45 | ||
|
|
9ea081deb3 | ||
|
|
14fcd36134 | ||
|
|
603cddc687 | ||
|
|
4f5c78d675 | ||
|
|
537dea4e4b | ||
|
|
e6b3da18f2 | ||
|
|
87c8cd2fb0 | ||
|
|
73bef8168f | ||
|
|
0473e7f25b | ||
|
|
6b286a8f07 | ||
|
|
6ac8d9d349 | ||
|
|
576081e25f | ||
|
|
197226eea6 | ||
|
|
acef614147 | ||
|
|
14fb171072 | ||
|
|
5f2380fdcd | ||
|
|
1f06e4f5a2 | ||
|
|
063a4e5628 | ||
|
|
5d22806ded | ||
|
|
cc930e4042 | ||
|
|
fa6daa37eb | ||
|
|
fa545c5bfd | ||
|
|
43432e8bbb | ||
|
|
94c765fa25 | ||
|
|
ba4b98de0e | ||
|
|
ed294dd414 | ||
|
|
cd10248226 | ||
|
|
df5283cbae | ||
|
|
347fc05376 | ||
|
|
1d3aafc08f | ||
|
|
d67cd489cd | ||
|
|
347d7de25b | ||
|
|
5d32073f2c | ||
|
|
fdf19f9025 | ||
|
|
8eecf59c47 | ||
|
|
69ce425ae5 | ||
|
|
42f87a1db7 | ||
|
|
2d9ca83ae0 | ||
|
|
e497290dbc | ||
|
|
fcbdc5e271 | ||
|
|
eef200be10 | ||
|
|
124a4ce89c | ||
|
|
5f96823f66 | ||
|
|
dc0cec0352 | ||
|
|
c57b0a2199 | ||
|
|
2bfa7d5b97 | ||
|
|
ab77e6767e | ||
|
|
0c4a788698 | ||
|
|
3e033043f3 | ||
|
|
5886ccc419 | ||
|
|
ba91d7aba6 | ||
|
|
c9e80b6f64 | ||
|
|
4e55707652 | ||
|
|
013dfd0ceb | ||
|
|
841c755bb7 | ||
|
|
aca163d067 | ||
|
|
943874805d | ||
|
|
f11601d70f | ||
|
|
7019618863 | ||
|
|
62dd056faa | ||
|
|
ab0d31bef1 | ||
|
|
95c839579e | ||
|
|
5a42b6a7ea | ||
|
|
69b9e57daf | ||
|
|
b7c7dd98c3 | ||
|
|
83de5ba5a4 | ||
|
|
06119510b7 | ||
|
|
22fdf9f4ed | ||
|
|
b858b120da | ||
|
|
77a7c5caef | ||
|
|
24ea74dc41 | ||
|
|
d411ed5c28 | ||
|
|
179e1e6143 | ||
|
|
05fdc945f3 | ||
|
|
5ae7c92d55 | ||
|
|
dd9a383f46 | ||
|
|
ca90afd544 | ||
|
|
3011491863 | ||
|
|
b2f8a65bc8 | ||
|
|
522fda2e58 | ||
|
|
d852f284da | ||
|
|
cd096f8832 | ||
|
|
e10eaf0d50 | ||
|
|
931d46fe7e | ||
|
|
d91fa5747d | ||
|
|
60624eedec | ||
|
|
5c91bc4335 | ||
|
|
c58712e2a9 | ||
|
|
d0d1ebb28c | ||
|
|
c9c454825e | ||
|
|
d12a526e82 | ||
|
|
e909e46786 | ||
|
|
3ab2e70e07 | ||
|
|
299d7bfee3 | ||
|
|
5c84a3adb5 | ||
|
|
f562caaa61 | ||
|
|
37115ea3d6 | ||
|
|
464be4f7cc | ||
|
|
dae3ef49be | ||
|
|
005405b16c | ||
|
|
9511e4a633 | ||
|
|
5dd90880d4 | ||
|
|
b50a6d8f34 | ||
|
|
ac43ff3c3d | ||
|
|
ceaedf9e2f | ||
|
|
efe938b392 | ||
|
|
a2f8f54061 | ||
|
|
c456714440 | ||
|
|
6ed4e8ab48 | ||
|
|
4e4187417e | ||
|
|
945b5cd09c | ||
|
|
a49aee9d3d | ||
|
|
925cd99afb | ||
|
|
8296dc5630 |
@@ -1,4 +1,8 @@
|
|||||||
root = true
|
root = true
|
||||||
|
|
||||||
[*.js, *.css, *.tpl]
|
[*.js, *.css, *.tpl, *.json]
|
||||||
indent_style = tab
|
indent_style = tab
|
||||||
|
end_of_line = lf
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = false
|
||||||
|
|||||||
14
.gitignore
vendored
14
.gitignore
vendored
@@ -3,7 +3,7 @@ node_modules/
|
|||||||
sftp-config.json
|
sftp-config.json
|
||||||
config.json
|
config.json
|
||||||
public/src/nodebb.min.js
|
public/src/nodebb.min.js
|
||||||
public/config.json
|
!src/views/config.json
|
||||||
public/css/*.css
|
public/css/*.css
|
||||||
*.sublime-project
|
*.sublime-project
|
||||||
*.sublime-workspace
|
*.sublime-workspace
|
||||||
@@ -17,12 +17,18 @@ provision.sh
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
feeds/recent.rss
|
feeds/recent.rss
|
||||||
|
|
||||||
# winston?
|
logs/
|
||||||
error.log
|
|
||||||
events.log
|
|
||||||
|
|
||||||
pidfile
|
pidfile
|
||||||
|
|
||||||
# templates
|
# templates
|
||||||
/public/templates
|
/public/templates
|
||||||
/public/sounds
|
/public/sounds
|
||||||
|
|
||||||
|
/public/uploads
|
||||||
|
|
||||||
|
# compiled files
|
||||||
|
/public/stylesheet.css
|
||||||
|
/public/admin.css
|
||||||
|
/public/nodebb.min.js
|
||||||
|
/public/nodebb.min.js.map
|
||||||
14
.travis.yml
14
.travis.yml
@@ -1,12 +1,12 @@
|
|||||||
services:
|
services:
|
||||||
- redis-server
|
- redis-server
|
||||||
before_install:
|
before_install:
|
||||||
- npm i --production
|
- 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}"
|
- node app --setup="{\"url\":\"http://127.0.0.1:4567/\",\"secret\":\"abcdef\",\"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}"
|
||||||
language: node_js
|
language: node_js
|
||||||
node_js:
|
node_js:
|
||||||
- "0.11"
|
- "0.11"
|
||||||
- "0.10"
|
- "0.10"
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
40
.tx/config
40
.tx/config
@@ -6,8 +6,10 @@ file_filter = public/language/<lang>/category.json
|
|||||||
source_file = public/language/en_GB/category.json
|
source_file = public/language/en_GB/category.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/category.json
|
trans.ar = public/language/ar/category.json
|
||||||
|
trans.bn = public/language/bn/category.json
|
||||||
trans.cs = public/language/cs/category.json
|
trans.cs = public/language/cs/category.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/category.json
|
||||||
trans.en@pirate = public/language/en@pirate/category.json
|
trans.en@pirate = public/language/en@pirate/category.json
|
||||||
trans.es = public/language/es/category.json
|
trans.es = public/language/es/category.json
|
||||||
@@ -43,8 +45,10 @@ file_filter = public/language/<lang>/login.json
|
|||||||
source_file = public/language/en_GB/login.json
|
source_file = public/language/en_GB/login.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/login.json
|
trans.ar = public/language/ar/login.json
|
||||||
|
trans.bn = public/language/bn/login.json
|
||||||
trans.cs = public/language/cs/login.json
|
trans.cs = public/language/cs/login.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/login.json
|
||||||
trans.en@pirate = public/language/en@pirate/login.json
|
trans.en@pirate = public/language/en@pirate/login.json
|
||||||
trans.es = public/language/es/login.json
|
trans.es = public/language/es/login.json
|
||||||
@@ -79,8 +83,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/recent.json
|
source_file = public/language/en_GB/recent.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/recent.json
|
trans.ar = public/language/ar/recent.json
|
||||||
|
trans.bn = public/language/bn/recent.json
|
||||||
trans.cs = public/language/cs/recent.json
|
trans.cs = public/language/cs/recent.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/recent.json
|
||||||
trans.en@pirate = public/language/en@pirate/recent.json
|
trans.en@pirate = public/language/en@pirate/recent.json
|
||||||
trans.es = public/language/es/recent.json
|
trans.es = public/language/es/recent.json
|
||||||
@@ -115,8 +121,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/unread.json
|
source_file = public/language/en_GB/unread.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/unread.json
|
trans.ar = public/language/ar/unread.json
|
||||||
|
trans.bn = public/language/bn/unread.json
|
||||||
trans.cs = public/language/cs/unread.json
|
trans.cs = public/language/cs/unread.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/unread.json
|
||||||
trans.en@pirate = public/language/en@pirate/unread.json
|
trans.en@pirate = public/language/en@pirate/unread.json
|
||||||
trans.es = public/language/es/unread.json
|
trans.es = public/language/es/unread.json
|
||||||
@@ -151,8 +159,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/modules.json
|
source_file = public/language/en_GB/modules.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/modules.json
|
trans.ar = public/language/ar/modules.json
|
||||||
|
trans.bn = public/language/bn/modules.json
|
||||||
trans.cs = public/language/cs/modules.json
|
trans.cs = public/language/cs/modules.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/modules.json
|
||||||
trans.en@pirate = public/language/en@pirate/modules.json
|
trans.en@pirate = public/language/en@pirate/modules.json
|
||||||
trans.es = public/language/es/modules.json
|
trans.es = public/language/es/modules.json
|
||||||
@@ -187,8 +197,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/register.json
|
source_file = public/language/en_GB/register.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/register.json
|
trans.ar = public/language/ar/register.json
|
||||||
|
trans.bn = public/language/bn/register.json
|
||||||
trans.cs = public/language/cs/register.json
|
trans.cs = public/language/cs/register.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/register.json
|
||||||
trans.en@pirate = public/language/en@pirate/register.json
|
trans.en@pirate = public/language/en@pirate/register.json
|
||||||
trans.es = public/language/es/register.json
|
trans.es = public/language/es/register.json
|
||||||
@@ -223,8 +235,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/user.json
|
source_file = public/language/en_GB/user.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/user.json
|
trans.ar = public/language/ar/user.json
|
||||||
|
trans.bn = public/language/bn/user.json
|
||||||
trans.cs = public/language/cs/user.json
|
trans.cs = public/language/cs/user.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/user.json
|
||||||
trans.en@pirate = public/language/en@pirate/user.json
|
trans.en@pirate = public/language/en@pirate/user.json
|
||||||
trans.es = public/language/es/user.json
|
trans.es = public/language/es/user.json
|
||||||
@@ -259,8 +273,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/global.json
|
source_file = public/language/en_GB/global.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/global.json
|
trans.ar = public/language/ar/global.json
|
||||||
|
trans.bn = public/language/bn/global.json
|
||||||
trans.cs = public/language/cs/global.json
|
trans.cs = public/language/cs/global.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/global.json
|
||||||
trans.en@pirate = public/language/en@pirate/global.json
|
trans.en@pirate = public/language/en@pirate/global.json
|
||||||
trans.es = public/language/es/global.json
|
trans.es = public/language/es/global.json
|
||||||
@@ -295,8 +311,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/notifications.json
|
source_file = public/language/en_GB/notifications.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/notifications.json
|
trans.ar = public/language/ar/notifications.json
|
||||||
|
trans.bn = public/language/bn/notifications.json
|
||||||
trans.cs = public/language/cs/notifications.json
|
trans.cs = public/language/cs/notifications.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/notifications.json
|
||||||
trans.en@pirate = public/language/en@pirate/notifications.json
|
trans.en@pirate = public/language/en@pirate/notifications.json
|
||||||
trans.es = public/language/es/notifications.json
|
trans.es = public/language/es/notifications.json
|
||||||
@@ -331,8 +349,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/reset_password.json
|
source_file = public/language/en_GB/reset_password.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/reset_password.json
|
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.cs = public/language/cs/reset_password.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/reset_password.json
|
||||||
trans.en@pirate = public/language/en@pirate/reset_password.json
|
trans.en@pirate = public/language/en@pirate/reset_password.json
|
||||||
trans.es = public/language/es/reset_password.json
|
trans.es = public/language/es/reset_password.json
|
||||||
@@ -367,8 +387,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/users.json
|
source_file = public/language/en_GB/users.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/users.json
|
trans.ar = public/language/ar/users.json
|
||||||
|
trans.bn = public/language/bn/users.json
|
||||||
trans.cs = public/language/cs/users.json
|
trans.cs = public/language/cs/users.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/users.json
|
||||||
trans.en@pirate = public/language/en@pirate/users.json
|
trans.en@pirate = public/language/en@pirate/users.json
|
||||||
trans.es = public/language/es/users.json
|
trans.es = public/language/es/users.json
|
||||||
@@ -403,8 +425,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/language.json
|
source_file = public/language/en_GB/language.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/language.json
|
trans.ar = public/language/ar/language.json
|
||||||
|
trans.bn = public/language/bn/language.json
|
||||||
trans.cs = public/language/cs/language.json
|
trans.cs = public/language/cs/language.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/language.json
|
||||||
trans.en@pirate = public/language/en@pirate/language.json
|
trans.en@pirate = public/language/en@pirate/language.json
|
||||||
trans.es = public/language/es/language.json
|
trans.es = public/language/es/language.json
|
||||||
@@ -439,8 +463,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/pages.json
|
source_file = public/language/en_GB/pages.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/pages.json
|
trans.ar = public/language/ar/pages.json
|
||||||
|
trans.bn = public/language/bn/pages.json
|
||||||
trans.cs = public/language/cs/pages.json
|
trans.cs = public/language/cs/pages.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/pages.json
|
||||||
trans.en@pirate = public/language/en@pirate/pages.json
|
trans.en@pirate = public/language/en@pirate/pages.json
|
||||||
trans.es = public/language/es/pages.json
|
trans.es = public/language/es/pages.json
|
||||||
@@ -475,8 +501,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/topic.json
|
source_file = public/language/en_GB/topic.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/topic.json
|
trans.ar = public/language/ar/topic.json
|
||||||
|
trans.bn = public/language/bn/topic.json
|
||||||
trans.cs = public/language/cs/topic.json
|
trans.cs = public/language/cs/topic.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/topic.json
|
||||||
trans.en@pirate = public/language/en@pirate/topic.json
|
trans.en@pirate = public/language/en@pirate/topic.json
|
||||||
trans.es = public/language/es/topic.json
|
trans.es = public/language/es/topic.json
|
||||||
@@ -511,8 +539,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/success.json
|
source_file = public/language/en_GB/success.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/success.json
|
trans.ar = public/language/ar/success.json
|
||||||
|
trans.bn = public/language/bn/success.json
|
||||||
trans.cs = public/language/cs/success.json
|
trans.cs = public/language/cs/success.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/success.json
|
||||||
trans.en@pirate = public/language/en@pirate/success.json
|
trans.en@pirate = public/language/en@pirate/success.json
|
||||||
trans.es = public/language/es/success.json
|
trans.es = public/language/es/success.json
|
||||||
@@ -547,8 +577,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/error.json
|
source_file = public/language/en_GB/error.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/error.json
|
trans.ar = public/language/ar/error.json
|
||||||
|
trans.bn = public/language/bn/error.json
|
||||||
trans.cs = public/language/cs/error.json
|
trans.cs = public/language/cs/error.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/error.json
|
||||||
trans.en@pirate = public/language/en@pirate/error.json
|
trans.en@pirate = public/language/en@pirate/error.json
|
||||||
trans.es = public/language/es/error.json
|
trans.es = public/language/es/error.json
|
||||||
@@ -583,8 +615,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/tags.json
|
source_file = public/language/en_GB/tags.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/tags.json
|
trans.ar = public/language/ar/tags.json
|
||||||
|
trans.bn = public/language/bn/tags.json
|
||||||
trans.cs = public/language/cs/tags.json
|
trans.cs = public/language/cs/tags.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/tags.json
|
||||||
trans.en@pirate = public/language/en@pirate/tags.json
|
trans.en@pirate = public/language/en@pirate/tags.json
|
||||||
trans.es = public/language/es/tags.json
|
trans.es = public/language/es/tags.json
|
||||||
@@ -619,8 +653,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/email.json
|
source_file = public/language/en_GB/email.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/email.json
|
trans.ar = public/language/ar/email.json
|
||||||
|
trans.bn = public/language/bn/email.json
|
||||||
trans.cs = public/language/cs/email.json
|
trans.cs = public/language/cs/email.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/email.json
|
||||||
trans.en@pirate = public/language/en@pirate/email.json
|
trans.en@pirate = public/language/en@pirate/email.json
|
||||||
trans.es = public/language/es/email.json
|
trans.es = public/language/es/email.json
|
||||||
@@ -655,8 +691,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/search.json
|
source_file = public/language/en_GB/search.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/search.json
|
trans.ar = public/language/ar/search.json
|
||||||
|
trans.bn = public/language/bn/search.json
|
||||||
trans.cs = public/language/cs/search.json
|
trans.cs = public/language/cs/search.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/search.json
|
||||||
trans.en@pirate = public/language/en@pirate/search.json
|
trans.en@pirate = public/language/en@pirate/search.json
|
||||||
trans.es = public/language/es/search.json
|
trans.es = public/language/es/search.json
|
||||||
@@ -691,8 +729,10 @@ type = KEYVALUEJSON
|
|||||||
source_file = public/language/en_GB/groups.json
|
source_file = public/language/en_GB/groups.json
|
||||||
source_lang = en_GB
|
source_lang = en_GB
|
||||||
trans.ar = public/language/ar/groups.json
|
trans.ar = public/language/ar/groups.json
|
||||||
|
trans.bn = public/language/bn/groups.json
|
||||||
trans.cs = public/language/cs/groups.json
|
trans.cs = public/language/cs/groups.json
|
||||||
trans.de = public/language/de/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_US = public/language/en_US/groups.json
|
||||||
trans.en@pirate = public/language/en@pirate/groups.json
|
trans.en@pirate = public/language/en@pirate/groups.json
|
||||||
trans.es = public/language/es/groups.json
|
trans.es = public/language/es/groups.json
|
||||||
|
|||||||
46
CONTRIBUTING.md
Normal file
46
CONTRIBUTING.md
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
# 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.
|
||||||
|
|
||||||
|
In general, if we can't reproduce it, we can't fix it!
|
||||||
|
|
||||||
|
> #### **Important**
|
||||||
|
> If you believe you have identified a security vulnerability with NodeBB, report it as soon as possible via email to **security@nodebb.org**.
|
||||||
|
> A member of the NodeBB security team will respond to the issue.
|
||||||
|
> Please do not post it to the public bug tracker.
|
||||||
|
|
||||||
|
## Try the latest version of NodeBB
|
||||||
|
|
||||||
|
There is a chance that the issue you are experiencing may have already been fixed.
|
||||||
|
|
||||||
|
## Provide the NodeBB version number and git hash
|
||||||
|
|
||||||
|
You can find the NodeBB version number in the Admin Control Panel (ACP), as well as the first line output to the shell when running NodeBB
|
||||||
|
|
||||||
|
``` plaintext
|
||||||
|
info: NodeBB v0.5.2-dev Copyright (C) 2013-2014 NodeBB Inc.
|
||||||
|
info: This program comes with ABSOLUTELY NO WARRANTY.
|
||||||
|
info: This is free software, and you are welcome to redistribute it under certain conditions.
|
||||||
|
info:
|
||||||
|
info: Time: Tue Oct 07 2014 20:25:20 GMT-0400 (EDT)
|
||||||
|
```
|
||||||
|
|
||||||
|
If you are running NodeBB via git, it is also helpful to let the maintainers know what commit hash you are on. To find the commit hash, execute the following command:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
$ cd /path/to/my/nodebb
|
||||||
|
$ git rev-parse HEAD
|
||||||
|
```
|
||||||
|
|
||||||
|
If you have downloaded the `.zip` or `.tar.gz` packages from GitHub (or elsewhere), please let us know.
|
||||||
|
|
||||||
|
## Attempt to use `git bisect`
|
||||||
|
|
||||||
|
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)
|
||||||
15
NOTES.md
15
NOTES.md
@@ -1,15 +0,0 @@
|
|||||||
## 0.4x Refactor Notes
|
|
||||||
|
|
||||||
Please remove this file after 0.4x (or perhaps organize it so that we can see the history of breaking changes)
|
|
||||||
|
|
||||||
### Immediate Deprecation Notices
|
|
||||||
|
|
||||||
* `action:ajaxifying` is no longer triggered on body but on window instead, in line with other similar hooks.
|
|
||||||
* `filter:server.create_routes` and `filter:admin.create_routes` will have limited support (ajaxify works, but first-load will not). Please have a look at [this plugin](https://github.com/psychobunny/nodebb-plugin-kitchen-sink/blob/master/library.js#L16-L22) for an example on how to create routes in plugins from now on.
|
|
||||||
|
|
||||||
### Upcoming Deprecation Warnings
|
|
||||||
|
|
||||||
* `filter:footer.build` will be deprecated for 0.4x in favour of the widget system (WIP)
|
|
||||||
* templates.setGlobal (server-side only) deprecated in favour of using res.locals
|
|
||||||
* `plugins/fireHook` route will be deprecated for 0.4x
|
|
||||||
* synchronous hooks will be deprecated for 0.4x - we're reducing complexity by removing the `callbacked: true` property in `plugin.json` - just use callbacks.
|
|
||||||
@@ -1,7 +1,9 @@
|
|||||||
# <img alt="NodeBB" src="http://i.imgur.com/mYxPPtB.png" />
|
# <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://travis-ci.org/NodeBB/NodeBB)
|
||||||
[](https://david-dm.org/nodebb/nodebb)
|
[](https://david-dm.org/nodebb/nodebb)
|
||||||
[](https://codeclimate.com/github/designcreateplay/NodeBB)
|
[](https://codeclimate.com/github/NodeBB/NodeBB)
|
||||||
[](https://readthedocs.org/projects/nodebb/?badge=latest)
|
[](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 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.
|
||||||
@@ -9,7 +11,7 @@
|
|||||||
* [Get NodeBB](http://www.nodebb.org/ "NodeBB")
|
* [Get NodeBB](http://www.nodebb.org/ "NodeBB")
|
||||||
* [Demo & Meta Discussion](http://community.nodebb.org)
|
* [Demo & Meta Discussion](http://community.nodebb.org)
|
||||||
* [NodeBB Blog](http://blog.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
|
* [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")
|
* [Follow us on Twitter](http://www.twitter.com/NodeBB/ "NodeBB Twitter")
|
||||||
* [Like us on Facebook](http://www.facebook.com/NodeBB/ "NodeBB Facebook")
|
* [Like us on Facebook](http://www.facebook.com/NodeBB/ "NodeBB Facebook")
|
||||||
|
|||||||
156
app.js
156
app.js
@@ -17,7 +17,6 @@
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
/*global require, global, process*/
|
/*global require, global, process*/
|
||||||
|
|
||||||
@@ -26,6 +25,8 @@ nconf.argv().env();
|
|||||||
|
|
||||||
var fs = require('fs'),
|
var fs = require('fs'),
|
||||||
os = require('os'),
|
os = require('os'),
|
||||||
|
url = require('url'),
|
||||||
|
async = require('async'),
|
||||||
semver = require('semver'),
|
semver = require('semver'),
|
||||||
winston = require('winston'),
|
winston = require('winston'),
|
||||||
path = require('path'),
|
path = require('path'),
|
||||||
@@ -37,12 +38,12 @@ global.env = process.env.NODE_ENV || 'production';
|
|||||||
|
|
||||||
winston.remove(winston.transports.Console);
|
winston.remove(winston.transports.Console);
|
||||||
winston.add(winston.transports.Console, {
|
winston.add(winston.transports.Console, {
|
||||||
colorize: true
|
colorize: true,
|
||||||
});
|
timestamp: function() {
|
||||||
|
var date = new Date();
|
||||||
winston.add(winston.transports.File, {
|
return date.getDate() + '/' + (date.getMonth() + 1) + ' ' + date.toTimeString().substr(0,5) + ' [' + global.process.pid + ']';
|
||||||
filename: 'logs/error.log',
|
},
|
||||||
level: 'error'
|
level: global.env === 'production' ? 'info' : 'verbose'
|
||||||
});
|
});
|
||||||
|
|
||||||
// TODO: remove once https://github.com/flatiron/winston/issues/280 is fixed
|
// TODO: remove once https://github.com/flatiron/winston/issues/280 is fixed
|
||||||
@@ -58,11 +59,13 @@ if(os.platform() === 'linux') {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Log GNU copyright info along with server info
|
if (!process.send) {
|
||||||
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
|
// If run using `node app`, log GNU copyright info along with server info
|
||||||
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
|
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
|
||||||
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
|
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
|
||||||
winston.info('');
|
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
|
||||||
|
winston.info('');
|
||||||
|
}
|
||||||
|
|
||||||
// Alternate configuration file support
|
// Alternate configuration file support
|
||||||
var configFile = path.join(__dirname, '/config.json'),
|
var configFile = path.join(__dirname, '/config.json'),
|
||||||
@@ -73,7 +76,7 @@ if (nconf.get('config')) {
|
|||||||
}
|
}
|
||||||
configExists = fs.existsSync(configFile);
|
configExists = fs.existsSync(configFile);
|
||||||
|
|
||||||
if (!nconf.get('help') && !nconf.get('setup') && !nconf.get('install') && !nconf.get('upgrade') && !nconf.get('reset') && configExists) {
|
if (!nconf.get('setup') && !nconf.get('install') && !nconf.get('upgrade') && !nconf.get('reset') && configExists) {
|
||||||
start();
|
start();
|
||||||
} else if (nconf.get('setup') || nconf.get('install') || !configExists) {
|
} else if (nconf.get('setup') || nconf.get('install') || !configExists) {
|
||||||
setup();
|
setup();
|
||||||
@@ -81,8 +84,6 @@ if (!nconf.get('help') && !nconf.get('setup') && !nconf.get('install') && !nconf
|
|||||||
upgrade();
|
upgrade();
|
||||||
} else if (nconf.get('reset')) {
|
} else if (nconf.get('reset')) {
|
||||||
reset();
|
reset();
|
||||||
} else {
|
|
||||||
displayHelp();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadConfig() {
|
function loadConfig() {
|
||||||
@@ -93,30 +94,49 @@ function loadConfig() {
|
|||||||
nconf.defaults({
|
nconf.defaults({
|
||||||
base_dir: __dirname,
|
base_dir: __dirname,
|
||||||
themes_path: path.join(__dirname, 'node_modules'),
|
themes_path: path.join(__dirname, 'node_modules'),
|
||||||
upload_url: '/uploads/',
|
|
||||||
views_dir: path.join(__dirname, 'public/templates')
|
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
|
// Ensure themes_path is a full filepath
|
||||||
nconf.set('themes_path', path.resolve(__dirname, nconf.get('themes_path')));
|
nconf.set('themes_path', path.resolve(__dirname, nconf.get('themes_path')));
|
||||||
|
nconf.set('core_templates_path', path.join(__dirname, 'src/views'));
|
||||||
nconf.set('base_templates_path', path.join(nconf.get('themes_path'), 'nodebb-theme-vanilla/templates'));
|
nconf.set('base_templates_path', path.join(nconf.get('themes_path'), 'nodebb-theme-vanilla/templates'));
|
||||||
}
|
}
|
||||||
|
|
||||||
function start() {
|
function start() {
|
||||||
loadConfig();
|
loadConfig();
|
||||||
|
|
||||||
winston.info('Time: ' + new Date());
|
// nconf defaults, if not set in config
|
||||||
winston.info('Initializing NodeBB v' + pkg.version);
|
if (!nconf.get('upload_path')) {
|
||||||
winston.info('* using configuration stored in: ' + configFile);
|
nconf.set('upload_path', '/public/uploads');
|
||||||
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'));
|
|
||||||
|
|
||||||
if (process.env.NODE_ENV === 'development') {
|
|
||||||
winston.info('Base Configuration OK.');
|
|
||||||
}
|
}
|
||||||
|
// 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);
|
||||||
|
|
||||||
|
var host = nconf.get(nconf.get('database') + ':host'),
|
||||||
|
storeLocation = host ? 'at ' + host + (host.indexOf('/') === -1 ? ':' + nconf.get(nconf.get('database') + ':port') : '') : '';
|
||||||
|
|
||||||
|
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) {
|
require('./src/database').init(function(err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
@@ -126,7 +146,6 @@ function start() {
|
|||||||
var meta = require('./src/meta');
|
var meta = require('./src/meta');
|
||||||
meta.configs.init(function () {
|
meta.configs.init(function () {
|
||||||
var templates = require('templates.js'),
|
var templates = require('templates.js'),
|
||||||
webserver = require('./src/webserver'),
|
|
||||||
sockets = require('./src/socket.io'),
|
sockets = require('./src/socket.io'),
|
||||||
plugins = require('./src/plugins'),
|
plugins = require('./src/plugins'),
|
||||||
upgrade = require('./src/upgrade');
|
upgrade = require('./src/upgrade');
|
||||||
@@ -135,20 +154,57 @@ function start() {
|
|||||||
|
|
||||||
upgrade.check(function(schema_ok) {
|
upgrade.check(function(schema_ok) {
|
||||||
if (schema_ok || nconf.get('check-schema') === false) {
|
if (schema_ok || nconf.get('check-schema') === false) {
|
||||||
|
webserver.init();
|
||||||
sockets.init(webserver.server);
|
sockets.init(webserver.server);
|
||||||
plugins.init();
|
|
||||||
|
|
||||||
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() {
|
async.waterfall([
|
||||||
webserver.init();
|
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);
|
process.on('SIGTERM', shutdown);
|
||||||
process.on('SIGINT', shutdown);
|
process.on('SIGINT', shutdown);
|
||||||
process.on('SIGHUP', restart);
|
process.on('SIGHUP', restart);
|
||||||
|
process.on('message', function(message) {
|
||||||
|
switch(message.action) {
|
||||||
|
case 'reload':
|
||||||
|
meta.reload();
|
||||||
|
break;
|
||||||
|
case 'js-propagate':
|
||||||
|
meta.js.cache = message.cache;
|
||||||
|
meta.js.map = message.map;
|
||||||
|
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;
|
||||||
|
meta.css.hash = message.hash;
|
||||||
|
winston.verbose('[cluster] Stylesheets propagated to worker %s', process.pid);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
process.on('uncaughtException', function(err) {
|
process.on('uncaughtException', function(err) {
|
||||||
winston.error(err.message);
|
winston.error(err.stack);
|
||||||
console.log(err.stack);
|
console.log(err.stack);
|
||||||
|
|
||||||
meta.js.killMinifier();
|
meta.js.killMinifier();
|
||||||
@@ -156,9 +212,7 @@ function start() {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
winston.warn('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
|
winston.warn('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
|
||||||
winston.warn(' node app --upgrade');
|
winston.warn(' ./nodebb upgrade');
|
||||||
winston.warn('To ignore this error (not recommended):');
|
|
||||||
winston.warn(' node app --no-check-schema');
|
|
||||||
process.exit();
|
process.exit();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -215,7 +269,7 @@ function reset() {
|
|||||||
process.exit();
|
process.exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nconf.get('themes')) {
|
if (nconf.get('theme')) {
|
||||||
resetThemes();
|
resetThemes();
|
||||||
} else if (nconf.get('plugin')) {
|
} else if (nconf.get('plugin')) {
|
||||||
resetPlugin(nconf.get('plugin'));
|
resetPlugin(nconf.get('plugin'));
|
||||||
@@ -230,12 +284,16 @@ function reset() {
|
|||||||
if (!err) {
|
if (!err) {
|
||||||
winston.info('[reset] Reset complete.');
|
winston.info('[reset] Reset complete.');
|
||||||
} else {
|
} 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();
|
process.exit();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
winston.warn('[reset] Nothing reset.');
|
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();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -272,14 +330,14 @@ function resetPlugin(pluginId) {
|
|||||||
var db = require('./src/database');
|
var db = require('./src/database');
|
||||||
db.setRemove('plugins:active', pluginId, function(err, result) {
|
db.setRemove('plugins:active', pluginId, function(err, result) {
|
||||||
if (err || result !== 1) {
|
if (err || result !== 1) {
|
||||||
winston.error('[reset] Could not disable plugin: ' + pluginId);
|
winston.error('[reset] Could not disable plugin: %s', pluginId);
|
||||||
if (err) {
|
if (err) {
|
||||||
winston.error('[reset] Encountered error: ' + err.message);
|
winston.error('[reset] Encountered error: %s', err.message);
|
||||||
} else {
|
} else {
|
||||||
winston.info('[reset] Perhaps it has already been disabled?');
|
winston.info('[reset] Perhaps it has already been disabled?');
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
winston.info('[reset] Plugin `' + pluginId + '` disabled');
|
winston.info('[reset] Plugin `%s` disabled', pluginId);
|
||||||
}
|
}
|
||||||
|
|
||||||
process.exit();
|
process.exit();
|
||||||
@@ -313,6 +371,8 @@ function shutdown(code) {
|
|||||||
winston.info('[app] Shutdown (SIGTERM/SIGINT) Initialised.');
|
winston.info('[app] Shutdown (SIGTERM/SIGINT) Initialised.');
|
||||||
require('./src/database').close();
|
require('./src/database').close();
|
||||||
winston.info('[app] Database connection closed.');
|
winston.info('[app] Database connection closed.');
|
||||||
|
require('./src/webserver').server.close();
|
||||||
|
winston.info('[app] Web server closed to connections.');
|
||||||
|
|
||||||
winston.info('[app] Shutdown complete.');
|
winston.info('[app] Shutdown complete.');
|
||||||
process.exit(code || 0);
|
process.exit(code || 0);
|
||||||
@@ -328,16 +388,4 @@ function restart() {
|
|||||||
winston.error('[app] Could not restart server. Shutting down.');
|
winston.error('[app] Could not restart server. Shutting down.');
|
||||||
shutdown(1);
|
shutdown(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function displayHelp() {
|
|
||||||
winston.info('Usage: node app [options] [arguments]');
|
|
||||||
winston.info(' [NODE_ENV=development | NODE_ENV=production] node app [--start] [arguments]');
|
|
||||||
winston.info('');
|
|
||||||
winston.info('Options:');
|
|
||||||
winston.info(' --help displays this usage information');
|
|
||||||
winston.info(' --setup configure your environment and setup NodeBB');
|
|
||||||
winston.info(' --upgrade upgrade NodeBB, first read: https://docs.nodebb.org/en/latest/upgrading/');
|
|
||||||
winston.info(' --reset soft resets NodeBB; disables all plugins and restores selected theme to Vanilla');
|
|
||||||
winston.info(' --start manually start NodeBB (default when no options are given)');
|
|
||||||
}
|
|
||||||
43
bcrypt.js
Normal file
43
bcrypt.js
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
var bcrypt = require('bcryptjs'),
|
||||||
|
async = require('async');
|
||||||
|
|
||||||
|
|
||||||
|
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();
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
{
|
{
|
||||||
"name": "Announcements",
|
"name": "Announcements",
|
||||||
"description": "Announcements regarding our community",
|
"description": "Announcements regarding our community",
|
||||||
"bgColor": "#0059B2",
|
"bgColor": "#fda34b",
|
||||||
"color": "#fff",
|
"color": "#fff",
|
||||||
"icon" : "fa-bullhorn",
|
"icon" : "fa-bullhorn",
|
||||||
"order": 1
|
"order": 1
|
||||||
@@ -10,89 +10,25 @@
|
|||||||
{
|
{
|
||||||
"name": "General Discussion",
|
"name": "General Discussion",
|
||||||
"description": "A place to talk about whateeeever you want",
|
"description": "A place to talk about whateeeever you want",
|
||||||
"bgColor": "#0059B2",
|
"bgColor": "#59b3d0",
|
||||||
"color": "#fff",
|
"color": "#fff",
|
||||||
"icon" : "fa-comment",
|
"icon" : "fa-comments-o",
|
||||||
"order": 2
|
"order": 2
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "NodeBB Development",
|
|
||||||
"description": "NodeBB development news and announcements",
|
|
||||||
"bgColor": "#0059B2",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-github",
|
|
||||||
"order": 3
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Blogs",
|
"name": "Blogs",
|
||||||
"description": "Blog posts from individual members",
|
"description": "Blog posts from individual members",
|
||||||
"bgColor": "#0059B2",
|
"bgColor": "#86ba4b",
|
||||||
"color": "#fff",
|
"color": "#fff",
|
||||||
"icon" : "fa-pencil",
|
"icon" : "fa-newspaper-o",
|
||||||
"order": 4
|
"order": 4
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Feature Requests",
|
"name": "Comments & Feedback",
|
||||||
"description": "Got a feature request you'd like to see? Give us a shout here.",
|
"description": "Got a question? Ask away!",
|
||||||
"bgColor": "#ab1290",
|
"bgColor": "#e95c5a",
|
||||||
"color": "#fff",
|
"color": "#fff",
|
||||||
"icon" : "fa-lightbulb-o",
|
"icon" : "fa-question",
|
||||||
"order": 5
|
"order": 3
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Bug Reports",
|
|
||||||
"description": "Having trouble with NodeBB? Let us know...",
|
|
||||||
"bgColor": "#ab1290",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-cogs",
|
|
||||||
"order": 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "NodeBB Plugins",
|
|
||||||
"description": "Enhance your NodeBB with plugins!",
|
|
||||||
"bgColor": "#ab1290",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-plus-square",
|
|
||||||
"order": 7
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "NodeBB Link Exchange",
|
|
||||||
"description": "Link exchange",
|
|
||||||
"bgColor": "#ab1290",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-exchange",
|
|
||||||
"order": 8
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "News",
|
|
||||||
"description": "News from around the world",
|
|
||||||
"bgColor": "#004C66",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-globe",
|
|
||||||
"order": 9
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Movies",
|
|
||||||
"description": "Discuss the latest movies here",
|
|
||||||
"bgColor": "#004C66",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-film",
|
|
||||||
"order": 10
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Games",
|
|
||||||
"description": "Discuss the latest games here",
|
|
||||||
"bgColor": "#004C66",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-crosshairs",
|
|
||||||
"order": 11
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Random",
|
|
||||||
"description": "Anything and (almost) everything welcome!",
|
|
||||||
"bgColor": "#004C66",
|
|
||||||
"color": "#fff",
|
|
||||||
"icon" : "fa-beer",
|
|
||||||
"order": 12
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -3,10 +3,26 @@
|
|||||||
"field": "title",
|
"field": "title",
|
||||||
"value": "NodeBB"
|
"value": "NodeBB"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"field": "showSiteTitle",
|
||||||
|
"value": "1"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"field": "postDelay",
|
"field": "postDelay",
|
||||||
"value": 10
|
"value": 10
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"field": "initialPostDelay",
|
||||||
|
"value": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"field": "newbiePostDelay",
|
||||||
|
"value": 120
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"field": "newbiePostDelayThreshold",
|
||||||
|
"value": 3
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"field": "minimumPostLength",
|
"field": "minimumPostLength",
|
||||||
"value": 8
|
"value": 8
|
||||||
@@ -27,6 +43,10 @@
|
|||||||
"field": "allowLocalLogin",
|
"field": "allowLocalLogin",
|
||||||
"value": 1
|
"value": 1
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"field": "allowAccountDelete",
|
||||||
|
"value": 1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"field": "allowFileUploads",
|
"field": "allowFileUploads",
|
||||||
"value": 0
|
"value": 0
|
||||||
@@ -64,11 +84,11 @@
|
|||||||
"value": 256
|
"value": 256
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"field": "chatMessagesToDisplay",
|
"field": "profileImageDimension",
|
||||||
"value": 50
|
"value": 128
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"field": "requireEmailConfirmation",
|
"field": "requireEmailConfirmation",
|
||||||
"value": 0
|
"value": 0
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ function success(err, config, callback) {
|
|||||||
return callback(new Error('aborted'));
|
return callback(new Error('aborted'));
|
||||||
}
|
}
|
||||||
|
|
||||||
var database = (config.redis || config.mongo || config.level) ? config.secondary_database : config.database;
|
var database = (config.redis || config.mongo) ? config.secondary_database : config.database;
|
||||||
|
|
||||||
function dbQuestionsSuccess(err, databaseConfig) {
|
function dbQuestionsSuccess(err, databaseConfig) {
|
||||||
if (!databaseConfig) {
|
if (!databaseConfig) {
|
||||||
@@ -39,15 +39,11 @@ function success(err, config, callback) {
|
|||||||
password: databaseConfig['mongo:password'],
|
password: databaseConfig['mongo:password'],
|
||||||
database: databaseConfig['mongo:database']
|
database: databaseConfig['mongo:database']
|
||||||
};
|
};
|
||||||
} else if (database === 'level') {
|
|
||||||
config.level = {
|
|
||||||
database: databaseConfig['level:database']
|
|
||||||
};
|
|
||||||
} else {
|
} else {
|
||||||
return callback(new Error('unknown database : ' + database));
|
return callback(new Error('unknown database : ' + database));
|
||||||
}
|
}
|
||||||
|
|
||||||
var allQuestions = questions.redis.concat(questions.mongo.concat(questions.level));
|
var allQuestions = questions.redis.concat(questions.mongo);
|
||||||
for(var x=0;x<allQuestions.length;x++) {
|
for(var x=0;x<allQuestions.length;x++) {
|
||||||
delete config[allQuestions[x].name];
|
delete config[allQuestions[x].name];
|
||||||
}
|
}
|
||||||
@@ -67,12 +63,6 @@ function success(err, config, callback) {
|
|||||||
} else {
|
} else {
|
||||||
prompt.get(questions.mongo, dbQuestionsSuccess);
|
prompt.get(questions.mongo, dbQuestionsSuccess);
|
||||||
}
|
}
|
||||||
} else if(database === 'level') {
|
|
||||||
if (config['level:database']) {
|
|
||||||
dbQuestionsSuccess(null, config);
|
|
||||||
} else {
|
|
||||||
prompt.get(questions.level, dbQuestionsSuccess);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
return callback(new Error('unknown database : ' + database));
|
return callback(new Error('unknown database : ' + database));
|
||||||
}
|
}
|
||||||
|
|||||||
301
loader.js
301
loader.js
@@ -1,82 +1,240 @@
|
|||||||
"use strict";
|
'use strict';
|
||||||
|
|
||||||
var nconf = require('nconf'),
|
var nconf = require('nconf'),
|
||||||
fs = require('fs'),
|
fs = require('fs'),
|
||||||
|
url = require('url'),
|
||||||
|
path = require('path'),
|
||||||
|
fork = require('child_process').fork,
|
||||||
|
|
||||||
|
async = require('async'),
|
||||||
|
logrotate = require('logrotate-stream'),
|
||||||
|
|
||||||
|
pkg = require('./package.json'),
|
||||||
|
|
||||||
pidFilePath = __dirname + '/pidfile',
|
pidFilePath = __dirname + '/pidfile',
|
||||||
output = fs.openSync(__dirname + '/logs/output.log', 'a'),
|
output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true }),
|
||||||
start = function() {
|
silent = process.env.NODE_ENV !== 'development',
|
||||||
var fork = require('child_process').fork,
|
numProcs,
|
||||||
nbb_start = function() {
|
workers = [],
|
||||||
if (timesStarted > 3) {
|
|
||||||
console.log('\n[loader] Experienced three start attempts in 10 seconds, most likely an error on startup. Halting.');
|
Loader = {
|
||||||
return nbb_stop();
|
timesStarted: 0,
|
||||||
|
js: {
|
||||||
|
cache: undefined,
|
||||||
|
map: undefined
|
||||||
|
},
|
||||||
|
css: {
|
||||||
|
cache: undefined,
|
||||||
|
acpCache: undefined
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
Loader.init = function(callback) {
|
||||||
|
if (silent) {
|
||||||
|
console.log = function(value) {
|
||||||
|
output.write(value + '\n');
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
process.on('SIGHUP', Loader.restart);
|
||||||
|
process.on('SIGUSR2', Loader.reload);
|
||||||
|
process.on('SIGTERM', Loader.stop);
|
||||||
|
callback();
|
||||||
|
};
|
||||||
|
|
||||||
|
Loader.displayStartupMessages = function(callback) {
|
||||||
|
console.log('');
|
||||||
|
console.log('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
|
||||||
|
console.log('This program comes with ABSOLUTELY NO WARRANTY.');
|
||||||
|
console.log('This is free software, and you are welcome to redistribute it under certain conditions.');
|
||||||
|
console.log('For the full license, please visit: http://www.gnu.org/copyleft/gpl.html');
|
||||||
|
console.log('');
|
||||||
|
callback();
|
||||||
|
};
|
||||||
|
|
||||||
|
Loader.addWorkerEvents = function(worker) {
|
||||||
|
|
||||||
|
worker.on('exit', function(code, signal) {
|
||||||
|
if (code !== 0) {
|
||||||
|
if (Loader.timesStarted < numProcs*3) {
|
||||||
|
Loader.timesStarted++;
|
||||||
|
if (Loader.crashTimer) {
|
||||||
|
clearTimeout(Loader.crashTimer);
|
||||||
}
|
}
|
||||||
|
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();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
timesStarted++;
|
console.log('[cluster] Child Process (' + worker.pid + ') has exited (code: ' + code + ', signal: ' + signal +')');
|
||||||
if (startTimer) {
|
if (!(worker.suicide || code === 0)) {
|
||||||
clearTimeout(startTimer);
|
console.log('[cluster] Spinning up another process...');
|
||||||
}
|
|
||||||
startTimer = setTimeout(resetTimer, 1000*10);
|
|
||||||
|
|
||||||
nbb = fork('./app', process.argv.slice(2), {
|
forkWorker(worker.index, worker.isPrimary);
|
||||||
env: process.env
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
nbb.on('message', function(message) {
|
worker.on('message', function(message) {
|
||||||
if (message && typeof message === 'object' && message.action) {
|
if (message && typeof message === 'object' && message.action) {
|
||||||
if (message.action === 'restart') {
|
switch (message.action) {
|
||||||
nbb_restart();
|
case 'ready':
|
||||||
}
|
if (Loader.js.cache) {
|
||||||
|
worker.send({
|
||||||
|
action: 'js-propagate',
|
||||||
|
cache: Loader.js.cache,
|
||||||
|
map: Loader.js.map,
|
||||||
|
hash: Loader.js.hash
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
|
||||||
|
|
||||||
nbb.on('exit', function(code, signal) {
|
if (Loader.css.cache) {
|
||||||
if (code) {
|
worker.send({
|
||||||
nbb_start();
|
action: 'css-propagate',
|
||||||
} else {
|
cache: Loader.css.cache,
|
||||||
nbb_stop();
|
acpCache: Loader.css.acpCache,
|
||||||
|
hash: Loader.css.hash
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
break;
|
||||||
},
|
case 'restart':
|
||||||
nbb_stop = function() {
|
console.log('[cluster] Restarting...');
|
||||||
if (startTimer) {
|
Loader.restart();
|
||||||
clearTimeout(startTimer);
|
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;
|
||||||
|
|
||||||
nbb.kill();
|
Loader.notifyWorkers({
|
||||||
if (fs.existsSync(pidFilePath)) {
|
action: 'js-propagate',
|
||||||
var pid = parseInt(fs.readFileSync(pidFilePath, { encoding: 'utf-8' }), 10);
|
cache: message.cache,
|
||||||
if (process.pid === pid) {
|
map: message.map,
|
||||||
fs.unlinkSync(pidFilePath);
|
hash: message.hash
|
||||||
}
|
}, worker.pid);
|
||||||
}
|
break;
|
||||||
},
|
case 'css-propagate':
|
||||||
nbb_restart = function() {
|
Loader.css.cache = message.cache;
|
||||||
nbb.removeAllListeners('exit').on('exit', function() {
|
Loader.css.acpCache = message.acpCache;
|
||||||
nbb_start();
|
Loader.css.hash = message.hash;
|
||||||
});
|
|
||||||
nbb.kill();
|
|
||||||
},
|
|
||||||
resetTimer = function() {
|
|
||||||
clearTimeout(startTimer);
|
|
||||||
timesStarted = 0;
|
|
||||||
},
|
|
||||||
timesStarted = 0,
|
|
||||||
startTimer;
|
|
||||||
|
|
||||||
process.on('SIGINT', nbb_stop);
|
Loader.notifyWorkers({
|
||||||
process.on('SIGTERM', nbb_stop);
|
action: 'css-propagate',
|
||||||
process.on('SIGHUP', nbb_restart);
|
cache: message.cache,
|
||||||
|
acpCache: message.acpCache,
|
||||||
|
hash: message.hash
|
||||||
|
}, worker.pid);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
nbb_start();
|
Loader.start = function(callback) {
|
||||||
},
|
numProcs = getPorts().length;
|
||||||
nbb;
|
console.log('Clustering enabled: Spinning up ' + numProcs + ' process(es).\n');
|
||||||
|
|
||||||
nconf.argv();
|
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() {
|
||||||
|
workers.forEach(function(worker) {
|
||||||
|
worker.send({
|
||||||
|
action: 'reload'
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
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')
|
||||||
|
});
|
||||||
|
|
||||||
// Start the daemon!
|
|
||||||
if (nconf.get('daemon') !== false) {
|
if (nconf.get('daemon') !== false) {
|
||||||
// Check for a still-active NodeBB process
|
|
||||||
if (fs.existsSync(pidFilePath)) {
|
if (fs.existsSync(pidFilePath)) {
|
||||||
try {
|
try {
|
||||||
var pid = fs.readFileSync(pidFilePath, { encoding: 'utf-8' });
|
var pid = fs.readFileSync(pidFilePath, { encoding: 'utf-8' });
|
||||||
@@ -87,13 +245,20 @@ if (nconf.get('daemon') !== false) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Daemonize and record new pid
|
|
||||||
require('daemon')({
|
require('daemon')({
|
||||||
stdout: output
|
stdout: process.stdout,
|
||||||
|
stderr: process.stderr
|
||||||
});
|
});
|
||||||
fs.writeFile(__dirname + '/pidfile', process.pid);
|
|
||||||
|
|
||||||
start();
|
fs.writeFile(__dirname + '/pidfile', process.pid);
|
||||||
} else {
|
|
||||||
start();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async.series([
|
||||||
|
Loader.init,
|
||||||
|
Loader.displayStartupMessages,
|
||||||
|
Loader.start
|
||||||
|
], function(err) {
|
||||||
|
if (err) {
|
||||||
|
console.log('[loader] Error during startup: ' + err.message);
|
||||||
|
}
|
||||||
|
});
|
||||||
72
minifier.js
72
minifier.js
@@ -8,28 +8,42 @@ var uglifyjs = require('uglify-js'),
|
|||||||
crypto = require('crypto'),
|
crypto = require('crypto'),
|
||||||
|
|
||||||
Minifier = {
|
Minifier = {
|
||||||
js: {},
|
js: {}
|
||||||
css: {}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Javascript */
|
/* Javascript */
|
||||||
Minifier.js.minify = function (scripts, minify, callback) {
|
Minifier.js.minify = function (scripts, minify, callback) {
|
||||||
var options = {};
|
|
||||||
|
|
||||||
scripts = scripts.filter(function(file) {
|
scripts = scripts.filter(function(file) {
|
||||||
return fs.existsSync(file);
|
return fs.existsSync(file);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!minify) {
|
if (minify) {
|
||||||
options.sourceMapURL = '/nodebb.min.js.map';
|
minifyScripts(scripts, function() {
|
||||||
options.outSourceMap = 'nodebb.min.js.map';
|
callback.apply(this, arguments);
|
||||||
options.mangle = false;
|
});
|
||||||
options.compress = false;
|
} else {
|
||||||
options.prefix = 1;
|
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 {
|
try {
|
||||||
var minified = uglifyjs.minify(scripts, options),
|
var minified = uglifyjs.minify(scripts, {
|
||||||
|
compress: false
|
||||||
|
}),
|
||||||
hasher = crypto.createHash('md5'),
|
hasher = crypto.createHash('md5'),
|
||||||
hash;
|
hash;
|
||||||
|
|
||||||
@@ -41,34 +55,26 @@ Minifier.js.minify = function (scripts, minify, callback) {
|
|||||||
payload: hash.slice(0, 8)
|
payload: hash.slice(0, 8)
|
||||||
});
|
});
|
||||||
|
|
||||||
callback({
|
callback(minified.code);
|
||||||
js: minified.code,
|
|
||||||
map: minified.map
|
|
||||||
});
|
|
||||||
} catch(err) {
|
} catch(err) {
|
||||||
process.send({
|
process.send({
|
||||||
type: 'error',
|
type: 'error',
|
||||||
payload: err
|
payload: err.message
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
|
|
||||||
process.on('message', function(payload) {
|
function concatenateScripts(scripts, callback) {
|
||||||
switch(payload.action) {
|
async.map(scripts, fs.readFile, function(err, scripts) {
|
||||||
case 'js':
|
if (err) {
|
||||||
Minifier.js.minify(payload.scripts, payload.minify, function(data) {
|
|
||||||
process.stdout.write(data.js);
|
|
||||||
process.send({
|
process.send({
|
||||||
type: 'end',
|
type: 'error',
|
||||||
payload: 'script'
|
payload: err
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
process.stderr.write(data.map);
|
scripts = scripts.join(require('os').EOL + ';');
|
||||||
process.send({
|
|
||||||
type: 'end',
|
callback(scripts);
|
||||||
payload: 'mapping'
|
});
|
||||||
});
|
}
|
||||||
});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
30
nodebb
30
nodebb
@@ -12,10 +12,11 @@ fi
|
|||||||
function pidExists() {
|
function pidExists() {
|
||||||
if [ -e "pidfile" ];
|
if [ -e "pidfile" ];
|
||||||
then
|
then
|
||||||
kill -s 0 $(cat pidfile);
|
if ps -p $(cat pidfile) > /dev/null
|
||||||
if [ !$? ];
|
|
||||||
then return 1;
|
then return 1;
|
||||||
else return 0;
|
else
|
||||||
|
rm ./pidfile;
|
||||||
|
return 0;
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
return 0;
|
return 0;
|
||||||
@@ -28,13 +29,8 @@ case "$1" in
|
|||||||
echo " \"./nodebb stop\" to stop the NodeBB server";
|
echo " \"./nodebb stop\" to stop the NodeBB server";
|
||||||
echo " \"./nodebb log\" to view server output";
|
echo " \"./nodebb log\" to view server output";
|
||||||
|
|
||||||
if [ -f "./logs/output.log" ]; # Preserve the last output log
|
|
||||||
then
|
|
||||||
mv ./logs/output.log ./logs/output.1.log;
|
|
||||||
fi;
|
|
||||||
|
|
||||||
# Start the loader daemon
|
# Start the loader daemon
|
||||||
"$node" loader -d "$@"
|
"$node" loader "$@"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
stop)
|
stop)
|
||||||
@@ -48,7 +44,7 @@ case "$1" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
reload|restart)
|
restart)
|
||||||
pidExists;
|
pidExists;
|
||||||
if [ 0 -eq $? ];
|
if [ 0 -eq $? ];
|
||||||
then
|
then
|
||||||
@@ -59,6 +55,17 @@ case "$1" in
|
|||||||
fi
|
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)
|
status)
|
||||||
pidExists;
|
pidExists;
|
||||||
if [ 0 -eq $? ];
|
if [ 0 -eq $? ];
|
||||||
@@ -85,7 +92,6 @@ case "$1" in
|
|||||||
npm i nodebb-theme-vanilla nodebb-theme-lavender nodebb-widget-essentials
|
npm i nodebb-theme-vanilla nodebb-theme-lavender nodebb-widget-essentials
|
||||||
"$node" app --upgrade
|
"$node" app --upgrade
|
||||||
touch package.json
|
touch package.json
|
||||||
echo -e "\n\e[00;32mNodeBB Dependencies up-to-date!\e[00;00m";
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
setup)
|
setup)
|
||||||
@@ -107,7 +113,7 @@ case "$1" in
|
|||||||
echo "Launching NodeBB in \"development\" mode."
|
echo "Launching NodeBB in \"development\" mode."
|
||||||
echo "To run the production build of NodeBB, please use \"forever\"."
|
echo "To run the production build of NodeBB, please use \"forever\"."
|
||||||
echo "More Information: https://docs.nodebb.org/en/latest/running/index.html"
|
echo "More Information: https://docs.nodebb.org/en/latest/running/index.html"
|
||||||
NODE_ENV=development supervisor -q --ignore public/templates --extensions 'node|js|tpl|less' -- app "$@"
|
NODE_ENV=development supervisor -q --ignore public/templates,public/nodebb.min.js,public/nodebb.min.js.map --extensions 'node|js|tpl|less' -- app "$@"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
|||||||
2610
npm-shrinkwrap.json
generated
Normal file
2610
npm-shrinkwrap.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
80
package.json
80
package.json
@@ -2,7 +2,7 @@
|
|||||||
"name": "nodebb",
|
"name": "nodebb",
|
||||||
"license": "GPLv3 or later",
|
"license": "GPLv3 or later",
|
||||||
"description": "NodeBB Forum",
|
"description": "NodeBB Forum",
|
||||||
"version": "0.5.0-2",
|
"version": "0.6.0",
|
||||||
"homepage": "http://www.nodebb.org",
|
"homepage": "http://www.nodebb.org",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -16,49 +16,55 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"async": "~0.9.0",
|
"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",
|
||||||
"connect-flash": "^0.1.1",
|
"connect-flash": "^0.1.1",
|
||||||
"cron": "~1.0.4",
|
"connect-multiparty": "^1.2.4",
|
||||||
|
"cookie-parser": "^1.3.3",
|
||||||
|
"cron": "^1.0.5",
|
||||||
|
"csurf": "^1.6.1",
|
||||||
"daemon": "~1.1.0",
|
"daemon": "~1.1.0",
|
||||||
"express": "4.6.1",
|
"express": "^4.9.5",
|
||||||
"cookie-parser": "^1.0.1",
|
"express-session": "^1.8.2",
|
||||||
"body-parser": "^1.0.1",
|
"gm": "1.17.0",
|
||||||
"serve-favicon": "^2.0.1",
|
"gravatar": "^1.1.0",
|
||||||
"express-session": "^1.0.2",
|
"heapdump": "^0.3.0",
|
||||||
"csurf": "^1.1.0",
|
"less": "^2.0.0",
|
||||||
"compression": "^1.0.1",
|
"logrotate-stream": "^0.2.3",
|
||||||
"connect-multiparty": "^1.0.1",
|
|
||||||
"morgan": "^1.0.0",
|
|
||||||
"gm": "1.16.0",
|
|
||||||
"gravatar": "1.0.6",
|
|
||||||
"less": "~1.7.3",
|
|
||||||
"mkdirp": "~0.5.0",
|
"mkdirp": "~0.5.0",
|
||||||
"nconf": "~0.6.7",
|
"morgan": "^1.3.2",
|
||||||
"nodebb-plugin-dbsearch": "0.0.13",
|
"nconf": "~0.7.1",
|
||||||
"nodebb-plugin-markdown": "~0.5.0",
|
"nodebb-plugin-dbsearch": "^0.1.0",
|
||||||
"nodebb-plugin-mentions": "~0.5.0",
|
"nodebb-plugin-markdown": "^0.8.0",
|
||||||
|
"nodebb-plugin-mentions": "^0.7.0",
|
||||||
"nodebb-plugin-soundpack-default": "~0.1.1",
|
"nodebb-plugin-soundpack-default": "~0.1.1",
|
||||||
"nodebb-theme-lavender": "~0.0.74",
|
"nodebb-plugin-spam-be-gone": "^0.4.0",
|
||||||
"nodebb-theme-vanilla": "~0.0.111",
|
"nodebb-theme-lavender": "^0.2.0",
|
||||||
"nodebb-widget-essentials": "~0.1.0",
|
"nodebb-theme-vanilla": "^0.2.0",
|
||||||
"npm": "^1.4.6",
|
"nodebb-widget-essentials": "~0.2.0",
|
||||||
"passport": "~0.2.0",
|
"npm": "^2.1.4",
|
||||||
|
"passport": "^0.2.1",
|
||||||
"passport-local": "1.0.0",
|
"passport-local": "1.0.0",
|
||||||
"prompt": "~0.2.11",
|
"prompt": "^0.2.14",
|
||||||
"request": "~2.38.0",
|
"request": "^2.44.0",
|
||||||
"rimraf": "~2.2.6",
|
"rimraf": "~2.2.6",
|
||||||
"rss": "~0.3.2",
|
"rss": "^1.0.0",
|
||||||
"semver": "~2.3.1",
|
"semver": "^4.0.3",
|
||||||
"sitemap": "~0.7.3",
|
"serve-favicon": "^2.1.5",
|
||||||
"socket.io": "~0.9.16",
|
"sitemap": "^0.7.4",
|
||||||
"socket.io-wildcard": "~0.1.1",
|
"socket.io": "^1.2.1",
|
||||||
"string": "~1.9.0",
|
"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.9",
|
||||||
"uglify-js": "git+https://github.com/julianlam/UglifyJS2.git",
|
"uglify-js": "git+https://github.com/julianlam/UglifyJS2.git",
|
||||||
"underscore": "~1.6.0",
|
"underscore": "~1.7.0",
|
||||||
"validator": "~3.16.1",
|
"validator": "~3.26.0",
|
||||||
"winston": "~0.7.2",
|
"winston": "^0.8.1",
|
||||||
"xregexp": "~2.0.0",
|
"xregexp": "~2.0.0"
|
||||||
"templates.js": "0.0.13"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"mocha": "~1.13.0"
|
"mocha": "~1.13.0"
|
||||||
|
|||||||
BIN
public/images/logo.png
Normal file
BIN
public/images/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.9 KiB |
@@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"new_topic_button": "موضوع جديد",
|
"new_topic_button": "موضوع جديد",
|
||||||
"no_topics": "<strong>لا توجد مواضيع في هذه الفئة</strong>لماذا لا تحاول نشر موضوع؟<br />",
|
"no_topics": "<strong>لا توجد مواضيع في هذه الفئة</strong>لم لا تحاول إنشاء موضوع؟<br />",
|
||||||
"browsing": "تصفح",
|
"browsing": "تصفح",
|
||||||
"no_replies": "لم يرد أحد",
|
"no_replies": "لم يرد أحد",
|
||||||
"share_this_category": "انشر هذه الفئة"
|
"share_this_category": "انشر هذه الفئة",
|
||||||
|
"ignore": "تجاهل"
|
||||||
}
|
}
|
||||||
@@ -1,20 +1,23 @@
|
|||||||
{
|
{
|
||||||
"password-reset-requested": "Password Reset Requested - %1!",
|
"password-reset-requested": "تم طلب إعادة تعيين كلمة السر - %1!",
|
||||||
"welcome-to": "Welcome to %1",
|
"welcome-to": "مرحبًا بك في %1",
|
||||||
"greeting_no_name": "Hello",
|
"greeting_no_name": "مرحبًا",
|
||||||
"greeting_with_name": "Hello %1",
|
"greeting_with_name": "مرحبًا بك يا %1",
|
||||||
"welcome.text1": "Thank you for registering with %1!",
|
"welcome.text1": "شكرًا على تسجيلك في %1!",
|
||||||
"welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.",
|
"welcome.text2": "لتفعيل حسابك، نحتاج إلى التأكد من صحة عنوان البريد الإلكتروني الذي تسجلت به.",
|
||||||
"welcome.cta": "Click here to confirm your email address",
|
"welcome.cta": "انقر هنا لتفعيل عنوان بريدك الإلكتروني",
|
||||||
"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.text1": "لقد توصلنا بطلب إعادة تعيين كلمة السرالخاصة بك، ربما لكونك قد نسيتها, إن لم يكن الأمر كذلك، المرجو تجاهل هذه الرسالة.",
|
||||||
"reset.text2": "To continue with the password reset, please click on the following link:",
|
"reset.text2": "لمواصلة طلب إعاة تعيين كلمة السر، المرجو تتبع هذا الرابط.",
|
||||||
"reset.cta": "Click here to reset your password",
|
"reset.cta": "انقر هنا لإعادة تعيين كلمة السر الخاصة بك.",
|
||||||
"digest.notifications": "You have some unread notifications from %1:",
|
"digest.notifications": "لديك تنبيهات غير مقروءة من طرف %1:",
|
||||||
"digest.latest_topics": "Latest topics from %1",
|
"digest.latest_topics": "آخر المستجدات من %1",
|
||||||
"digest.cta": "Click here to visit %1",
|
"digest.cta": "انقر هنا لمشاهدة %1",
|
||||||
"digest.unsub.info": "This digest was sent to you due to your subscription settings.",
|
"digest.unsub.info": "تم إرسال هذا الإشعار بآخر المستجدات وفقا لخيارات تسجيلكم.",
|
||||||
"digest.unsub.cta": "Click here to alter those settings",
|
"digest.no_topics": "ليس هناك مواضيع نشيطة في %1 الماضي",
|
||||||
"digest.daily.no_topics": "There have been no active topics in the past day",
|
"notif.chat.subject": "هناك محادثة جديدة من %1",
|
||||||
"test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.",
|
"notif.chat.cta": "انقر هنا لمتابعة المحادثة",
|
||||||
"closing": "Thanks!"
|
"notif.chat.unsub.info": "تم إرسال هذا الإشعار بوجودة محادثة جديدة وفقا لخيارات تسجيلك.",
|
||||||
|
"test.text1": "هذه رسالة تجريبية للتأكد من صحة إعدادت الرسائل الإلكترونية في منتدى NodeBB خاصتك.",
|
||||||
|
"unsub.cta": "انقر هنا لتغيير تلك الإعدادات",
|
||||||
|
"closing": "شكرًا لك!"
|
||||||
}
|
}
|
||||||
@@ -1,56 +1,67 @@
|
|||||||
{
|
{
|
||||||
"invalid-data": "بيانات غير صالحة",
|
"invalid-data": "بيانات غير صالحة",
|
||||||
"not-logged-in": "لم تقم بتسجيل الدخول",
|
"not-logged-in": "لم تقم بتسجيل الدخول",
|
||||||
"account-locked": "Your account has been locked temporarily",
|
"account-locked": "تم إقفال حسابكم مؤقتًا.",
|
||||||
"search-requires-login": "Searching requires an account! Please login or register!",
|
"search-requires-login": "البحث في المنتدى يستلزم توفرك على حساب! المرجو تسجيل دخولك أو إنشاء حساب!",
|
||||||
"invalid-cid": "Invalid Category ID",
|
"invalid-cid": "قائمة غير موجودة",
|
||||||
"invalid-tid": "Invalid Topic ID",
|
"invalid-tid": "موضوع غير متواجد",
|
||||||
"invalid-pid": "Invalid Post ID",
|
"invalid-pid": "رد غير موجود",
|
||||||
"invalid-uid": "Invalid User ID",
|
"invalid-uid": "مستخدم غير موجود",
|
||||||
"invalid-username": "اسم المستخدم غير مقبول",
|
"invalid-username": "اسم المستخدم غير مقبول",
|
||||||
"invalid-email": "البريد الاكتروني غير مقبول",
|
"invalid-email": "البريد الاكتروني غير مقبول",
|
||||||
"invalid-title": "Invalid title!",
|
"invalid-title": "عنوان غير صحيح",
|
||||||
"invalid-user-data": "Invalid User Data",
|
"invalid-user-data": "بيانات المستخدم غير صحيحة",
|
||||||
"invalid-password": "كلمة السر غير مقبولة",
|
"invalid-password": "كلمة السر غير مقبولة",
|
||||||
"invalid-pagination-value": "Invalid pagination value",
|
"invalid-username-or-password": "المرجود تحديد اسم مستخدم و كلمة مرور",
|
||||||
"username-taken": "اسم المستخدم ماخوذ",
|
"invalid-search-term": "كلمة البحث غير صحيحة",
|
||||||
"email-taken": "البريد الالكتروني ماخوذ",
|
"invalid-pagination-value": "رقم الصفحة غير موجود",
|
||||||
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
|
"username-taken": "اسم المستخدم مأخوذ",
|
||||||
"username-too-short": "Username too short",
|
"email-taken": "البريد الالكتروني مأخوذ",
|
||||||
|
"email-not-confirmed": "عنوان بريدك الإلكتروني غير مفعل بعد. انقر هنا لتفعيله من فضلك.",
|
||||||
|
"username-too-short": "اسم المستخدم قصير.",
|
||||||
|
"username-too-long": "اسم المستخدم طويل",
|
||||||
"user-banned": "المستخدم محظور",
|
"user-banned": "المستخدم محظور",
|
||||||
"no-category": "Category doesn't exist",
|
"user-too-new": "عذرًا، يجب الانتظار %1 ثواني قبل إضافة ردك الأول.",
|
||||||
"no-topic": "Topic doesn't exist",
|
"no-category": "قائمة غير موجودة",
|
||||||
"no-post": "Post doesn't exist",
|
"no-topic": "موضوع غير موجود",
|
||||||
"no-group": "Group doesn't exist",
|
"no-post": "رد غير موجود",
|
||||||
"no-user": "المستخدم لا يوجد",
|
"no-group": "مجموعة غير موجودة",
|
||||||
"no-teaser": "Teaser doesn't exist",
|
"no-user": "اسم مستخدم غير موجود",
|
||||||
"no-privileges": "You don't have enough privileges for this action.",
|
"no-teaser": "مقتطف غير موجود",
|
||||||
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
|
"no-privileges": "لاتملك الصلاحيات اللازمة للقيام بهذه العملية",
|
||||||
"category-disabled": "Category disabled",
|
"no-emailers-configured": "لا يمكن إرسال رسالة إلكترونية تجريبية لعدم وجود قوالب خاصة بالرسائل الإلكترونية،",
|
||||||
|
"category-disabled": "قائمة معطلة",
|
||||||
"topic-locked": "الموضوع مقفول",
|
"topic-locked": "الموضوع مقفول",
|
||||||
"still-uploading": "الرجاء انتظار الرفع",
|
"still-uploading": "الرجاء انتظار الرفع",
|
||||||
"content-too-short": "Please enter a longer post. At least %1 characters.",
|
"content-too-short": "المرجو إدخال موضوع أطول من هذا. يجب أن تتوفر المواضيع على %1 حروف على الأقل.",
|
||||||
"title-too-short": "Please enter a longer title. At least %1 characters.",
|
"title-too-short": "المرجو إدخال عنوان أطول من هذا. يجب أن تتوفر العناوين على %1 حروف على الأقل.",
|
||||||
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
|
"title-too-long": "المرجو إدخال عنوان أقصر من هذا. يجب ألا تتجاوز العناوين %1 حرفًا.",
|
||||||
"too-many-posts": "You can only post every %1 seconds.",
|
"too-many-posts": "يمكنك إنشاء المواضيع بمعدل موضوع واحد كل %1 ثانية - المرجو الانتظار قليلا.",
|
||||||
"file-too-big": "Maximum allowed file size is %1 kbs",
|
"too-many-posts-newbie": "بصفتك مستخدمًا جديدًا، يمكنك إنشاء المواضيع بمعدل موضوع واحد كل %1 ثانية حتى تحصل على سمعة %2 - المرجو الانتظار قليلا.",
|
||||||
"cant-vote-self-post": "You cannot vote for your own post",
|
"file-too-big": "حجم الملفات الأقصى المسموح به هو %1 كب - المرجو رفع ملف أقل حجمًا",
|
||||||
"already-favourited": "You already favourited this post",
|
"cant-vote-self-post": "لايمكنك التصويت لردك",
|
||||||
"already-unfavourited": "You already unfavourited this post",
|
"already-favourited": "لقد سبق وأضفت هذا الرد إلى المفضلة",
|
||||||
"cant-ban-other-admins": "You can't ban other admins!",
|
"already-unfavourited": "لقد سبق وحذفت هذا الرد من المفضلة",
|
||||||
|
"cant-ban-other-admins": "لايمكن حظر مدبر نظام آخر.",
|
||||||
"invalid-image-type": "نوع الصورة ممنوع",
|
"invalid-image-type": "نوع الصورة ممنوع",
|
||||||
"group-name-too-short": "Group name too short",
|
"group-name-too-short": "اسم المجموعة قصير",
|
||||||
"group-already-exists": "Group already exists",
|
"group-already-exists": "المجموعة موجودة مسبقا",
|
||||||
"group-name-change-not-allowed": "Group name change not allowed",
|
"group-name-change-not-allowed": "لايسمح بتغيير أسماء المجموعات",
|
||||||
"post-already-deleted": "Post already deleted",
|
"post-already-deleted": "سبق وتم حذف هذا الرد",
|
||||||
"post-already-restored": "Post already restored",
|
"post-already-restored": "سبق وتم إلغاء حذف هذا الرد",
|
||||||
"topic-already-deleted": "Topic already deleted",
|
"topic-already-deleted": "سبق وتم حذف هذا الموضوع",
|
||||||
"topic-already-restored": "Topic already restored",
|
"topic-already-restored": "سبق وتم إلغاء حذف هذا الرد",
|
||||||
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
|
"topic-thumbnails-are-disabled": "الصور المصغرة غير مفعلة.",
|
||||||
"invalid-file": "Invalid File",
|
"invalid-file": "ملف غير مقبول",
|
||||||
"uploads-are-disabled": "Uploads are disabled",
|
"uploads-are-disabled": "رفع الملفات غير مفعل",
|
||||||
"upload-error": "مشكلة في الرفع: 1%",
|
"upload-error": "مشكلة في الرفع: 1%",
|
||||||
"signature-too-long": "Signature can't be longer than %1 characters!",
|
"signature-too-long": "عذرا، توقيعك يجب ألا يتجاوز %1 حرفًا",
|
||||||
"cant-chat-with-yourself": "You can't chat with yourself!",
|
"cant-chat-with-yourself": "لايمكنك فتح محادثة مع نفسك",
|
||||||
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post"
|
"chat-restricted": "هذا المستخدم عطل المحادثات الواردة عليه. يجب أن يتبعك حتى تتمكن من فتح محادثة معه.",
|
||||||
|
"reputation-system-disabled": "نظام السمعة معطل",
|
||||||
|
"downvoting-disabled": "التصويتات السلبية معطلة",
|
||||||
|
"not-enough-reputation-to-downvote": "ليس لديك سمعة تكفي لإضافة صوت سلبي لهذا الموضوع",
|
||||||
|
"not-enough-reputation-to-flag": "ليس لديك سمعة تكفي للإشعار بموضوع مخل",
|
||||||
|
"reload-failed": "المنتدى واجه مشكلة أثناء إعادة التحميل: \"%1\". سيواصل المنتدى خدمة العملاء السابقين لكن يجب عليك إلغاء أي تغيير قمت به قبل إعادة التحميل.",
|
||||||
|
"registration-error": "حدث خطأ أثناء التسجيل"
|
||||||
}
|
}
|
||||||
@@ -10,66 +10,68 @@
|
|||||||
"500.message": "عفوا! يبدو وكأنه شيء ذهب على نحو خاطئ!",
|
"500.message": "عفوا! يبدو وكأنه شيء ذهب على نحو خاطئ!",
|
||||||
"register": "تسجيل",
|
"register": "تسجيل",
|
||||||
"login": "دخول",
|
"login": "دخول",
|
||||||
"please_log_in": "Please Log In",
|
"please_log_in": "المرجو تسجيل الدخول",
|
||||||
"logout": "تسجيل الخروج",
|
"logout": "تسجيل الخروج",
|
||||||
"posting_restriction_info": "Posting is currently restricted to registered members only, click here to log in.",
|
"posting_restriction_info": "إضافة مشاركات جديد حكر على الأعضاء المسجلين، انقر هنا لتسجيل الدخول.",
|
||||||
"welcome_back": "Welcome Back",
|
"welcome_back": "مرحبًا بعودتك",
|
||||||
"you_have_successfully_logged_in": "You have successfully logged in",
|
"you_have_successfully_logged_in": "تم سجيل الدخول بنجاح",
|
||||||
"save_changes": "حفظ التغييرات",
|
"save_changes": "حفظ التغييرات",
|
||||||
"close": "أغلق",
|
"close": "أغلق",
|
||||||
"pagination": "Pagination",
|
"pagination": "الصفحات",
|
||||||
"pagination.out_of": "%1 out of %2",
|
"pagination.out_of": "%1 من %2",
|
||||||
"pagination.enter_index": "Enter index",
|
"pagination.enter_index": "أدخل الرقم التسلسلي",
|
||||||
"header.admin": "مشرف",
|
"header.admin": "مدبر نظام",
|
||||||
"header.recent": "حديث",
|
"header.recent": "حديث",
|
||||||
"header.unread": "غير مقروء",
|
"header.unread": "غير مقروء",
|
||||||
"header.tags": "Tags",
|
"header.tags": "وسم",
|
||||||
"header.popular": "Popular",
|
"header.popular": "الأكثر شهرة",
|
||||||
"header.users": "المستخدمين",
|
"header.users": "المستخدمين",
|
||||||
"header.chats": "Chats",
|
"header.chats": "المحادثات",
|
||||||
"header.notifications": "Notifications",
|
"header.notifications": "التنبيهات",
|
||||||
"header.search": "بحث",
|
"header.search": "بحث",
|
||||||
"header.profile": "ملف",
|
"header.profile": "ملف",
|
||||||
"notifications.loading": "تحميل التبليغات",
|
"notifications.loading": "تحميل التبليغات",
|
||||||
"chats.loading": "تحميل الدردشات",
|
"chats.loading": "تحميل الدردشات",
|
||||||
"motd.welcome": "مرحبا بكم NodeBB، منصة مناقشة المستقبل",
|
"motd.welcome": "مرحبا بكم NodeBB، منصة مناقشة المستقبل",
|
||||||
"previouspage": "Previous Page",
|
"previouspage": "الصفحة السابقة",
|
||||||
"nextpage": "Next Page",
|
"nextpage": "الصفحة التالية",
|
||||||
"alert.success": "Success",
|
"alert.success": "نجاح",
|
||||||
"alert.error": "Error",
|
"alert.error": "خطأ",
|
||||||
"alert.banned": "Banned",
|
"alert.banned": "محظور",
|
||||||
"alert.banned.message": "You have just been banned, you will now be logged out.",
|
"alert.banned.message": "لقد تم حظر حسابك. سيتم تسجيل الخروج.",
|
||||||
"alert.unfollow": "You are no longer following %1!",
|
"alert.unfollow": "أنت لا تتابع %1 بعد الآن!",
|
||||||
"alert.follow": "You are now following %1!",
|
"alert.follow": "أنت الآن تتابع %1!",
|
||||||
"online": "Online",
|
"online": "المتواجدون حاليًّا",
|
||||||
"users": "Users",
|
"users": "الأعضاء",
|
||||||
"topics": "Topics",
|
"topics": "المواضيع",
|
||||||
"posts": "Posts",
|
"posts": "المشاركات",
|
||||||
"views": "Views",
|
"views": "المشاهدات",
|
||||||
"reputation": "Reputation",
|
"reputation": "السمعة",
|
||||||
"read_more": "read more",
|
"read_more": "اقرأ المزيد",
|
||||||
"posted_ago_by_guest": "posted %1 by Guest",
|
"posted_ago_by_guest": "كتب %1 من طرف زائر",
|
||||||
"posted_ago_by": "posted %1 by %2",
|
"posted_ago_by": "كتب %1 من طرف %2",
|
||||||
"posted_ago": "posted %1",
|
"posted_ago": "كتب %1",
|
||||||
"posted_in_ago_by_guest": "posted in %1 %2 by Guest",
|
"posted_in_ago_by_guest": "كتب في %1 %2 من طرف زائر",
|
||||||
"posted_in_ago_by": "posted in %1 %2 by %3",
|
"posted_in_ago_by": "كتب في %1 %2 من طرف %3",
|
||||||
"posted_in_ago": "posted in %1 %2",
|
"posted_in_ago": "كتب في %1 %2",
|
||||||
"replied_ago": "replied %1",
|
"replied_ago": "رد %1",
|
||||||
"user_posted_ago": "%1 posted %2",
|
"user_posted_ago": "%1 كتب %2",
|
||||||
"guest_posted_ago": "Guest posted %1",
|
"guest_posted_ago": "كتب زائر %1",
|
||||||
"last_edited_by_ago": "last edited by %1 %2",
|
"last_edited_by_ago": "آخر تعديل من طرف %1 %2",
|
||||||
"norecentposts": "No Recent Posts",
|
"norecentposts": "لاوجود لمشاركات جديدة",
|
||||||
"norecenttopics": "No Recent Topics",
|
"norecenttopics": "لاوجود لمواضيع جديدة",
|
||||||
"recentposts": "Recent Posts",
|
"recentposts": "آخر المشاركات",
|
||||||
"recentips": "Recently Logged In IPs",
|
"recentips": "آخر عناوين ال IP التي سجلت الدخول",
|
||||||
"away": "Away",
|
"away": "غير متواجد",
|
||||||
"dnd": "Do not Disturb",
|
"dnd": "المرجو عدم الإزعاج",
|
||||||
"invisible": "Invisible",
|
"invisible": "مخفي",
|
||||||
"offline": "Offline",
|
"offline": "غير متصل",
|
||||||
"email": "Email",
|
"email": "عنوان البريد الإلكتروني",
|
||||||
"language": "Language",
|
"language": "اللغة",
|
||||||
"guest": "Guest",
|
"guest": "زائر",
|
||||||
"guests": "Guests",
|
"guests": "الزوار",
|
||||||
"updated.title": "Forum Updated",
|
"updated.title": "تم تحديث المنتدى",
|
||||||
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
|
"updated.message": "لقد تم تحديث المنتدى إلى آخر نسخة للتو. المرجو إعادة تحميل الصفحة.",
|
||||||
|
"privacy": "الخصوصية",
|
||||||
|
"delete_all": "حذف الكل"
|
||||||
}
|
}
|
||||||
@@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"view_group": "View Group",
|
"groups": "المجموعات",
|
||||||
"details.title": "Group Details",
|
"view_group": "معاينة المجموعة",
|
||||||
"details.members": "Member List",
|
"details.title": "تفاصيل المجموعة",
|
||||||
"details.has_no_posts": "This group's members have not made any posts.",
|
"details.members": "لائحة الأعضاء",
|
||||||
"details.latest_posts": "Latest Posts"
|
"details.has_no_posts": "أعضاء هذه المجموعة لم يضيفوا أية مشاركة",
|
||||||
|
"details.latest_posts": "آخر المشاركات"
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"username": "Username / Email",
|
"username": "اسم المستخدم / عنوان البريد الإلكتروني",
|
||||||
"remember_me": "تذكرني؟",
|
"remember_me": "تذكرني؟",
|
||||||
"forgot_password": "نسيت كلمة المرور؟",
|
"forgot_password": "نسيت كلمة المرور؟",
|
||||||
"alternative_logins": "تسجيلات الدخول البديلة",
|
"alternative_logins": "تسجيلات الدخول البديلة",
|
||||||
"failed_login_attempt": "فشلت محاولة تسجيل الدخول، يرجى المحاولة مرة أخرى.",
|
"failed_login_attempt": "فشلت محاولة تسجيل الدخول، يرجى المحاولة مرة أخرى.",
|
||||||
"login_successful": "قمت بتسجيل الدخول بنجاح!",
|
"login_successful": "قمت بتسجيل الدخول بنجاح!",
|
||||||
"dont_have_account": "Don't have an account?"
|
"dont_have_account": "لم تفتح حسابك بعد؟"
|
||||||
}
|
}
|
||||||
@@ -1,18 +1,21 @@
|
|||||||
{
|
{
|
||||||
"chat.chatting_with": "الدردشة مع <span id=\"chat-with-name\"></span>",
|
"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.send": "أرسل",
|
||||||
"chat.no_active": "لا يوجد لديك دردشات نشطة.",
|
"chat.no_active": "لا يوجد لديك دردشات نشطة.",
|
||||||
"chat.user_typing": "%1 is typing ...",
|
"chat.user_typing": "%1 يكتب رسالة...",
|
||||||
"chat.user_has_messaged_you": "%1 has messaged you.",
|
"chat.user_has_messaged_you": "%1 أرسل لك رسالة.",
|
||||||
"chat.see_all": "See all Chats",
|
"chat.see_all": "معاينة كل الدردشات",
|
||||||
"chat.no-messages": "Please select a recipient to view chat message history",
|
"chat.no-messages": "المرجو اختيار مرسل إليه لمعاينة تاريخ الدردشات",
|
||||||
"chat.recent-chats": "Recent Chats",
|
"chat.recent-chats": "آخر الدردشات",
|
||||||
"chat.contacts": "Contacts",
|
"chat.contacts": "الأصدقاء",
|
||||||
"chat.message-history": "Message History",
|
"chat.message-history": "تاريخ الرسائل",
|
||||||
"chat.pop-out": "Pop out chat",
|
"chat.pop-out": "افتح الدردشة في نافذة خاصة",
|
||||||
"chat.maximize": "Maximize",
|
"chat.maximize": "تكبير",
|
||||||
"composer.user_said_in": "%1 said in %2:",
|
"chat.seven_days": "7 أيام",
|
||||||
"composer.user_said": "%1 said:",
|
"chat.thirty_days": "30 يومًا",
|
||||||
"composer.discard": "Are you sure you wish to discard this post?"
|
"chat.three_months": "3 أشهر",
|
||||||
|
"composer.user_said_in": "%1 كتب في %2",
|
||||||
|
"composer.user_said": "%1 كتب:",
|
||||||
|
"composer.discard": "هل أنت متأكد أنك تريد التخلي عن التغييرات؟"
|
||||||
}
|
}
|
||||||
@@ -1,23 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "إعلام",
|
"title": "تنبيهات",
|
||||||
"no_notifs": "You have no new notifications",
|
"no_notifs": "ليس لديك أية تنبيهات جديدة",
|
||||||
"see_all": "See all Notifications",
|
"see_all": "معاينة كل التنبيهات",
|
||||||
"back_to_home": "Back to %1",
|
"back_to_home": "عودة إلى %1",
|
||||||
"outgoing_link": "رابط خارجي",
|
"outgoing_link": "رابط خارجي",
|
||||||
"outgoing_link_message": "You are now leaving %1.",
|
"outgoing_link_message": "أنت تغادر %1 حاليا.",
|
||||||
"continue_to": "Continue to %1",
|
"continue_to": "استمر إلى %1",
|
||||||
"return_to": "Return to %1",
|
"return_to": "عودة إى %1",
|
||||||
"new_notification": "New Notification",
|
"new_notification": "تنبيه جديد",
|
||||||
"you_have_unread_notifications": "You have unread notifications.",
|
"you_have_unread_notifications": "لديك تنبيهات غير مقروءة.",
|
||||||
"new_message_from": "New message from <strong>%1</strong>",
|
"new_message_from": "رسالة جديدة من <strong>%1</strong>",
|
||||||
"upvoted_your_post": "<strong>%1</strong> has upvoted your post.",
|
"upvoted_your_post_in": "<strong>%1</strong> أضاف صوتًا إيجابيا إلى مشاركتك في <strong>%2</strong>.",
|
||||||
"favourited_your_post": "<strong>%1</strong> has favourited your post.",
|
"moved_your_post": "<strong>%1</strong> نقل مشاركتك.",
|
||||||
"user_flagged_post": "<strong>%1</strong> flagged a post.",
|
"moved_your_topic": "<strong>%1</strong> نقل موضوعك.",
|
||||||
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
|
"favourited_your_post_in": "<strong>%1</strong> أضاف مشاركتك في <strong>%2</strong> إلى مفضلته.",
|
||||||
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
|
"user_flagged_post_in": "<strong>%1</strong> أشعَرَ بمشاركة مخلة في <strong>%2</strong>",
|
||||||
"email-confirmed": "Email Confirmed",
|
"user_posted_to": "<strong>%1</strong> أضاف ردا إلى: <strong>%2</strong>",
|
||||||
"email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.",
|
"user_posted_topic": "<strong>%1</strong> أنشأ موضوعًا جديدًا: <strong>%2</strong>",
|
||||||
"email-confirm-error": "An error occurred...",
|
"user_mentioned_you_in": "<strong>%1</strong> ذكرَ اسمك في <strong>%2</strong>",
|
||||||
"email-confirm-error-message": "There was a problem validating your email address. Perhaps the code was invalid or has expired.",
|
"user_started_following_you": "<strong>%1</strong> صار يتابعك.",
|
||||||
"email-confirm-sent": "Confirmation email sent."
|
"email-confirmed": "تم التحقق من عنوان البريد الإلكتروني",
|
||||||
|
"email-confirmed-message": "شكرًا على إثبات صحة عنوان بريدك الإلكتروني. صار حسابك مفعلًا بالكامل.",
|
||||||
|
"email-confirm-error": "حدث خطأ ما...",
|
||||||
|
"email-confirm-error-message": "حدث خطأ أثناء التحقق من عنوان بريدك الإلكتروني. ربما رمز التفعيل خاطئ أو انتهت صلاحيته.",
|
||||||
|
"email-confirm-sent": "تم إرسال بريد التفعيل."
|
||||||
}
|
}
|
||||||
@@ -1,16 +1,18 @@
|
|||||||
{
|
{
|
||||||
"home": "Home",
|
"home": "الصفحة الرئيسية",
|
||||||
"unread": "Unread Topics",
|
"unread": "المواضيع غير المقروءة",
|
||||||
"popular": "Popular Topics",
|
"popular": "المواضيع الأكثر شهرة",
|
||||||
"recent": "Recent Topics",
|
"recent": "المواضيع الحديثة",
|
||||||
"users": "Registered Users",
|
"users": "المستخدمون المسجلون",
|
||||||
"notifications": "Notifications",
|
"notifications": "التنبيهات",
|
||||||
"tags": "Topics tagged under \"%1\"",
|
"tags": "المواضيع المرتبطة بالوسم %1",
|
||||||
"user.edit": "Editing \"%1\"",
|
"user.edit": "تعديل \"%1\"",
|
||||||
"user.following": "People %1 Follows",
|
"user.following": "المستخدمون الذين يتبعهم %1",
|
||||||
"user.followers": "People who Follow %1",
|
"user.followers": "المستخدمون الذين يتبعون %1",
|
||||||
"user.posts": "Posts made by %1",
|
"user.posts": "ردود %1",
|
||||||
"user.topics": "Topics created by %1",
|
"user.topics": "مواضيع %1",
|
||||||
"user.favourites": "%1's Favourite Posts",
|
"user.favourites": "مفضلات %1",
|
||||||
"user.settings": "User Settings"
|
"user.settings": "خيارات المستخدم",
|
||||||
|
"maintenance.text": "جاري صيانة %1. المرجو العودة لاحقًا.",
|
||||||
|
"maintenance.messageIntro": "بالإضافة إلى ذلك، قام مدبر النظام بترك هذه الرسالة:"
|
||||||
}
|
}
|
||||||
@@ -1,8 +1,9 @@
|
|||||||
{
|
{
|
||||||
"title": "Recent",
|
"title": "الحديثة",
|
||||||
"day": "يوم",
|
"day": "يوم",
|
||||||
"week": "أسبوع",
|
"week": "أسبوع",
|
||||||
"month": "شهر",
|
"month": "شهر",
|
||||||
"year": "Year",
|
"year": "سنة",
|
||||||
"no_recent_topics": "There are no recent topics."
|
"alltime": "دائمًا",
|
||||||
|
"no_recent_topics": "لاوجود لمشاركات جديدة"
|
||||||
}
|
}
|
||||||
@@ -12,7 +12,7 @@
|
|||||||
"confirm_password": "تأكيد كلمة السر",
|
"confirm_password": "تأكيد كلمة السر",
|
||||||
"confirm_password_placeholder": "تأكيد كلمة السر",
|
"confirm_password_placeholder": "تأكيد كلمة السر",
|
||||||
"register_now_button": "قم بالتسجيل الآن",
|
"register_now_button": "قم بالتسجيل الآن",
|
||||||
"alternative_registration": "التسجيل البديلة",
|
"alternative_registration": "طريقة تسجيل بديلة",
|
||||||
"terms_of_use": "Terms of Use",
|
"terms_of_use": "قوانين الاستخدام",
|
||||||
"agree_to_terms_of_use": "I agree to the Terms of Use"
|
"agree_to_terms_of_use": "أوافق على قوانين الاستخدام"
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"update_password": "تحديث كلمة السر",
|
"update_password": "تحديث كلمة السر",
|
||||||
"password_changed.title": "تم تغير كلمة السر",
|
"password_changed.title": "تم تغير كلمة السر",
|
||||||
"password_changed.message": "<p>تم تغير كلمة السر بنجاح. يرجى <a href='/login'>إعادة الدخول</a></p>",
|
"password_changed.message": "<p>تم تغير كلمة السر بنجاح. يرجى <a href='/login'>إعادة الدخول</a></p>",
|
||||||
"wrong_reset_code.title": "إعادة تعيين رمز غير صحيح",
|
"wrong_reset_code.title": "رمز إعادة التعيين غير صحيح",
|
||||||
"wrong_reset_code.message": "رامز إعادة التعين غير صحيح، يرجى المحاولة مرة أخرى أو <a href='/reset'>اطلب رمز جديد</a>",
|
"wrong_reset_code.message": "رمز إعادة التعين غير صحيح، يرجى المحاولة مرة أخرى أو <a href='/reset'>اطلب رمزا جديدا</a>",
|
||||||
"new_password": "كلمة السر الجديدة",
|
"new_password": "كلمة السر الجديدة",
|
||||||
"repeat_password": "تأكيد كلمة السر",
|
"repeat_password": "تأكيد كلمة السر",
|
||||||
"enter_email": "يرجى إدخال <strong>عنوان البريد الإلكتروني</strong> الخاص بك وسوف نرسل لك رسالة بالبريد الالكتروني مع تعليمات حول كيفية إستعادة حسابك.",
|
"enter_email": "يرجى إدخال <strong>عنوان البريد الإلكتروني</strong> الخاص بك وسوف نرسل لك رسالة بالبريد الالكتروني مع تعليمات حول كيفية إستعادة حسابك.",
|
||||||
"enter_email_address": "Enter Email Address",
|
"enter_email_address": "ادخل عنوان البريد الإلكتروني",
|
||||||
"password_reset_sent": "إعادة تعيين كلمة السر أرسلت",
|
"password_reset_sent": "إعادة تعيين كلمة السر أرسلت",
|
||||||
"invalid_email": "بريد إلكتروني غير صالح أو غير موجود"
|
"invalid_email": "بريد إلكتروني غير صالح أو غير موجود"
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
{
|
{
|
||||||
"results_matching": "%1 result(s) matching \"%2\", (%3 seconds)"
|
"results_matching": "%1 نتيجة (نتائج) موافقة ل \"%2\", (%3 ثواني)",
|
||||||
|
"no-matches": "لم يتم إيجاد أية مشاركات"
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"success": "Success",
|
"success": "نجاح",
|
||||||
"topic-post": "You have successfully posted.",
|
"topic-post": "لقد تمت الإضافة بنجاح.",
|
||||||
"authentication-successful": "Authentication Successful",
|
"authentication-successful": "تم تسجيل الدخول بنجاح",
|
||||||
"settings-saved": "Settings saved!"
|
"settings-saved": "تم حفظ التغييرات!"
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"no_tag_topics": "There are no topics with this tag.",
|
"no_tag_topics": "لاوجود لمواضيع تحمل هذا الوسم.",
|
||||||
"tags": "Tags",
|
"tags": "بطاقات",
|
||||||
"enter_tags_here": "Enter tags here. Press enter after each tag.",
|
"enter_tags_here": "أدخل البطاقات هنا. اضغط ENTER بعد كل بطاقة.",
|
||||||
"no_tags": "There are no tags yet."
|
"enter_tags_here_short": "أدخل البطاقات...",
|
||||||
|
"no_tags": "لاتوجد هناك بطاقات بعد."
|
||||||
}
|
}
|
||||||
@@ -1,95 +1,96 @@
|
|||||||
{
|
{
|
||||||
"topic": "موضوع",
|
"topic": "موضوع",
|
||||||
"topic_id": "Topic ID",
|
"topic_id": "معرف الموضوع",
|
||||||
"topic_id_placeholder": "Enter topic ID",
|
"topic_id_placeholder": "أدخل معرف الموضوع",
|
||||||
"no_topics_found": "لا توجد مواضيع !",
|
"no_topics_found": "لا توجد مواضيع !",
|
||||||
"no_posts_found": "No posts found!",
|
"no_posts_found": "لا توجد مشاركات!",
|
||||||
"post_is_deleted": "This post is deleted!",
|
"post_is_deleted": "هذه المشاركة محذوفة!",
|
||||||
"profile": "ملف",
|
"profile": "الملف الشخصي",
|
||||||
"posted_by": "Posted by %1",
|
"posted_by": "كتب من طرف %1",
|
||||||
"posted_by_guest": "Posted by Guest",
|
"posted_by_guest": "كتب من طرف زائر",
|
||||||
"chat": "دردشة",
|
"chat": "دردشة",
|
||||||
"notify_me": "تنبه من ردود جديدة في هذا الموضوع",
|
"notify_me": "تلق تنبيهات بالردود الجديدة في هذا الموضوع",
|
||||||
"quote": "اقتبس",
|
"quote": "اقتبس",
|
||||||
"reply": "رد",
|
"reply": "رد",
|
||||||
"edit": "صحح",
|
"edit": "تعديل",
|
||||||
"delete": "حذف",
|
"delete": "حذف",
|
||||||
"purge": "Purge",
|
"purge": "تطهير",
|
||||||
"restore": "Restore",
|
"restore": "استعادة",
|
||||||
"move": "انقل",
|
"move": "انقل",
|
||||||
"fork": "فرع",
|
"fork": "فرع",
|
||||||
"banned": "محظور",
|
|
||||||
"link": "رابط",
|
"link": "رابط",
|
||||||
"share": "شارك",
|
"share": "نشر",
|
||||||
"tools": "أدوات",
|
"tools": "أدوات",
|
||||||
"flag": "Flag",
|
"flag": "اشعار بمشاركة مخلة",
|
||||||
"locked": "Locked",
|
"locked": "مقفل",
|
||||||
"bookmark_instructions": "Click here to return to your last position or close to discard.",
|
"bookmark_instructions": "انقر هنا للإكمال أو أغلق للإلغاء.",
|
||||||
"flag_title": "Flag this post for moderation",
|
"flag_title": "إشعار بمشاركة مخلة.",
|
||||||
"flag_confirm": "Are you sure you want to flag this post?",
|
"flag_confirm": "هل تريد حقًّا أن تشعر بهذه المشاركة على أنها مخلة؟",
|
||||||
"flag_success": "This post has been flagged for moderation.",
|
"flag_success": "تم الإشعار بهذه المشاركة على أنها مخلة",
|
||||||
"deleted_message": "This thread has been deleted. Only users with thread management privileges can see it.",
|
"deleted_message": "هذه المشاركة محذوفة. فقط من لهم صلاحية الإشراف على ا لمشاركات يمكنهم معاينتها.",
|
||||||
"following_topic.message": "You will now be receiving notifications when somebody posts to this topic.",
|
"following_topic.message": "ستستلم تنبيها عند كل مشاركة جديدة في هذا الموضوع.",
|
||||||
"not_following_topic.message": "You will no longer receive notifications from this topic.",
|
"not_following_topic.message": "لن تستلم أي تنبيه بخصوص عذا الموضوع بعد الآن.",
|
||||||
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
|
"login_to_subscribe": "المرجو إنشاء حساب أو تسجيل الدخول حتى يمكنك متابعة هذا الموضوع.",
|
||||||
"markAsUnreadForAll.success": "Topic marked as unread for all.",
|
"markAsUnreadForAll.success": "تم تحديد الموضوع على أنه غير مقروء.",
|
||||||
"watch": "Watch",
|
"watch": "مراقبة",
|
||||||
"watch.title": "Be notified of new replies in this topic",
|
"unwatch": "الغاء المراقبة",
|
||||||
"share_this_post": "Share this Post",
|
"watch.title": "استلم تنبيها بالردود الجديدة في هذا الموضوع",
|
||||||
|
"unwatch.title": "ألغ مراقبة هذا الموضوع",
|
||||||
|
"share_this_post": "انشر هذا الموضوع",
|
||||||
"thread_tools.title": "أدوات الموضوع",
|
"thread_tools.title": "أدوات الموضوع",
|
||||||
"thread_tools.markAsUnreadForAll": "علم غير مقروء",
|
"thread_tools.markAsUnreadForAll": "علم غير مقروء",
|
||||||
"thread_tools.pin": "علق الموضوع",
|
"thread_tools.pin": "علق الموضوع",
|
||||||
"thread_tools.unpin": "Unpin Topic",
|
"thread_tools.unpin": "إلغاء تعليق الموضوع",
|
||||||
"thread_tools.lock": "قفل الموضوع",
|
"thread_tools.lock": "أقفل الموضوع",
|
||||||
"thread_tools.unlock": "Unlock Topic",
|
"thread_tools.unlock": "إلغاء إقفال الموضوع",
|
||||||
"thread_tools.move": "نقل الموضوع",
|
"thread_tools.move": "نقل الموضوع",
|
||||||
"thread_tools.move_all": "Move All",
|
"thread_tools.move_all": "نقل الكل",
|
||||||
"thread_tools.fork": "تفرع الموضوع",
|
"thread_tools.fork": "إنشاء فرع الموضوع",
|
||||||
"thread_tools.delete": "حذف الموضوع",
|
"thread_tools.delete": "حذف الموضوع",
|
||||||
"thread_tools.delete_confirm": "Are you sure you want to delete this thread?",
|
"thread_tools.delete_confirm": "هل أنت متأكد أنك تريد حذف هذا الموضوع؟",
|
||||||
"thread_tools.restore": "Restore Topic",
|
"thread_tools.restore": "استعادة الموضوع",
|
||||||
"thread_tools.restore_confirm": "Are you sure you want to restore this thread?",
|
"thread_tools.restore_confirm": "هل أنت متأكد أنك تريد استعادة هذا الموضوع؟",
|
||||||
"thread_tools.purge": "Purge Topic",
|
"thread_tools.purge": "تطهير الموضوع",
|
||||||
"thread_tools.purge_confirm": "Are you sure you want to purge this thread?",
|
"thread_tools.purge_confirm": "هل أنت متأكد أنك تريد تطهير هذا الموضوع؟",
|
||||||
"topic_move_success": "This topic has been successfully moved to %1",
|
"topic_move_success": "تم نقل هذا الموضوع إلى %1 بنجاح",
|
||||||
"post_delete_confirm": "Are you sure you want to delete this post?",
|
"post_delete_confirm": "هل أنت متأكد أنك تريد حذف هذه المشاركة؟",
|
||||||
"post_restore_confirm": "Are you sure you want to restore this post?",
|
"post_restore_confirm": "هل أنت متأكد أنك تريد استعادة هذه المشاركة؟",
|
||||||
"post_purge_confirm": "Are you sure you want to purge this post?",
|
"post_purge_confirm": "هل أنت متأكد أنك تريد تطهير هذه المشاركة؟",
|
||||||
"load_categories": "تحميل الفئات",
|
"load_categories": "تحميل الفئات",
|
||||||
"disabled_categories_note": "الفئات المجلدة رمادية",
|
"disabled_categories_note": "الفئات المعطلة رمادية",
|
||||||
"confirm_move": "انقل",
|
"confirm_move": "انقل",
|
||||||
"confirm_fork": "فرع",
|
"confirm_fork": "فرع",
|
||||||
"favourite": "المفضل",
|
"favourite": "إضافة إلى المفضلة",
|
||||||
"favourites": "المفضلة",
|
"favourites": "المفضلة",
|
||||||
"favourites.has_no_favourites": "ليس لديك أي ردود مفضلة. فضل بعد الردود لرؤيتهم هنا",
|
"favourites.has_no_favourites": "ليس لديك أي ردود مفضلة. أضف بعض المشاركات إلى المفضلة لرؤيتهم هنا",
|
||||||
"loading_more_posts": "تحميل المزيد من المشاركات",
|
"loading_more_posts": "تحميل المزيد من المشاركات",
|
||||||
"move_topic": "نقل الموضوع",
|
"move_topic": "نقل الموضوع",
|
||||||
"move_topics": "Move Topics",
|
"move_topics": "نقل المواضيع",
|
||||||
"move_post": "نقل الرد",
|
"move_post": "نقل المشاركة",
|
||||||
"post_moved": "Post moved!",
|
"post_moved": "تم نقل المشاركة",
|
||||||
"fork_topic": "فرع الموضوع",
|
"fork_topic": "فرع الموضوع",
|
||||||
"topic_will_be_moved_to": "هذا الموضوع سوف ينقل إلى فئة",
|
"topic_will_be_moved_to": "هذا الموضوع سوف ينقل إلى فئة",
|
||||||
"fork_topic_instruction": "إضغط على الردود لتفريعهم",
|
"fork_topic_instruction": "إضغط على المشاركات التي تريد تفريعها",
|
||||||
"fork_no_pids": "لم تختار أي رد",
|
"fork_no_pids": "لم تختر أي مشاركة",
|
||||||
"fork_success": "تفريع الموضوع بنجاح!",
|
"fork_success": "تم إنشاء فرع للموضوع بنجاح! إضغط هنا لمعاينة الفرع.",
|
||||||
"composer.title_placeholder": "Enter your topic title here...",
|
"composer.title_placeholder": "أدخل عنوان موضوعك هنا...",
|
||||||
"composer.discard": "Discard",
|
"composer.discard": "نبذ التغييرات",
|
||||||
"composer.submit": "Submit",
|
"composer.submit": "حفظ",
|
||||||
"composer.replying_to": "Replying to %1",
|
"composer.replying_to": "الرد على %1",
|
||||||
"composer.new_topic": "New Topic",
|
"composer.new_topic": "موضوع جديد",
|
||||||
"composer.uploading": "uploading...",
|
"composer.uploading": "جاري الرفع",
|
||||||
"composer.thumb_url_label": "Paste a topic thumbnail URL",
|
"composer.thumb_url_label": "ألصق رابط الصورة المصغرة للموضوع",
|
||||||
"composer.thumb_title": "Add a thumbnail to this topic",
|
"composer.thumb_title": "إضافة صورة مصغرة للموضوع",
|
||||||
"composer.thumb_url_placeholder": "http://example.com/thumb.png",
|
"composer.thumb_url_placeholder": "http://example.com/thumb.png",
|
||||||
"composer.thumb_file_label": "Or upload a file",
|
"composer.thumb_file_label": "أو قم برفع ملف",
|
||||||
"composer.thumb_remove": "Clear fields",
|
"composer.thumb_remove": "تفريغ الخانات",
|
||||||
"composer.drag_and_drop_images": "Drag and Drop Images Here",
|
"composer.drag_and_drop_images": "اسحب وأسقص الصور هنا",
|
||||||
"more_users_and_guests": "%1 more user(s) and %2 guest(s)",
|
"more_users_and_guests": "%1 مستخدم(ين) و %2 زائر(ين)",
|
||||||
"more_users": "%1 more user(s)",
|
"more_users": "%1 مستخدم(ين)",
|
||||||
"more_guests": "%1 more guest(s)",
|
"more_guests": "%1 زائر(ين)",
|
||||||
"users_and_others": "%1 and %2 others",
|
"users_and_others": "%1 و %2 آخرين",
|
||||||
"sort_by": "Sort by",
|
"sort_by": "ترتيب حسب",
|
||||||
"oldest_to_newest": "Oldest to Newest",
|
"oldest_to_newest": "من الأقدم إلى الأحدث",
|
||||||
"newest_to_oldest": "Newest to Oldest",
|
"newest_to_oldest": "من الأحدث إلى الأقدم",
|
||||||
"most_votes": "Most votes"
|
"most_votes": "الأكثر تصويتًا"
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"title": "Unread",
|
"title": "غير مقروء",
|
||||||
"no_unread_topics": "ليس هناك أي موضوع غير مقروء",
|
"no_unread_topics": "ليس هناك أي موضوع غير مقروء",
|
||||||
"load_more": "حمل المزيد",
|
"load_more": "حمل المزيد",
|
||||||
"mark_as_read": "Mark as Read",
|
"mark_as_read": "حدد غير مقروء",
|
||||||
"selected": "Selected",
|
"selected": "المختارة",
|
||||||
"all": "All",
|
"all": "الكل",
|
||||||
"topics_marked_as_read.success": "Topics marked as read!"
|
"topics_marked_as_read.success": "تم تحديد المواضيع على أنها مقروءة!"
|
||||||
}
|
}
|
||||||
@@ -3,63 +3,73 @@
|
|||||||
"offline": "ليس موجود حالياً",
|
"offline": "ليس موجود حالياً",
|
||||||
"username": "إسم المستخدم",
|
"username": "إسم المستخدم",
|
||||||
"email": "البريد الإلكتروني",
|
"email": "البريد الإلكتروني",
|
||||||
"confirm_email": "Confirm Email",
|
"confirm_email": "تأكيد عنوان البريد الإلكتروني",
|
||||||
|
"delete_account": "حذف الحساب",
|
||||||
|
"delete_account_confirm": "هل أن متأكد أنك تريد حذف حسابك؟<br /><strong> هذه العملية غير قابلة للإلغاء ولن يكون بالإمكان استعادة بياناتك</strong><br /><br />أدخل اسم المستخدم الخاص بك لتأكيد عملية الحذف",
|
||||||
"fullname": "الاسم الكامل",
|
"fullname": "الاسم الكامل",
|
||||||
"website": "الموقع الإلكتروني",
|
"website": "الموقع الإلكتروني",
|
||||||
"location": "موقع",
|
"location": "الموقع",
|
||||||
"age": "عمر",
|
"age": "السن",
|
||||||
"joined": "تاريخ التسجيل",
|
"joined": "تاريخ التسجيل",
|
||||||
"lastonline": "تاريخ أخر دخول",
|
"lastonline": "تاريخ آخر دخول",
|
||||||
"profile": "Profile",
|
"profile": "الملف الشخصي",
|
||||||
"profile_views": "مشاهد الملف",
|
"profile_views": "عدد مشاهدات الملف الشخصي",
|
||||||
"reputation": "سمعة",
|
"reputation": "السمعة",
|
||||||
"favourites": "Favourites",
|
"favourites": "المفضلات",
|
||||||
"followers": "أتباع",
|
"followers": "المتابعون",
|
||||||
"following": "يتبع",
|
"following": "يتابع",
|
||||||
"signature": "توقيع",
|
"signature": "توقيع",
|
||||||
"gravatar": "Gravatar",
|
"gravatar": "Gravatar",
|
||||||
"birthday": "عيد ميلاد",
|
"birthday": "عيد ميلاد",
|
||||||
"chat": "Chat",
|
"chat": "محادثة",
|
||||||
"follow": "Follow",
|
"follow": "تابع",
|
||||||
"unfollow": "Unfollow",
|
"unfollow": "إلغاء المتابعة",
|
||||||
"profile_update_success": "Profile has been updated successfully!",
|
"profile_update_success": "تم تحديث الملف الشخصي بنجاح",
|
||||||
"change_picture": "تغيير الصورة",
|
"change_picture": "تغيير الصورة",
|
||||||
"edit": "صحح",
|
"edit": "تعديل",
|
||||||
"uploaded_picture": "صورة تم تحميلها",
|
"uploaded_picture": "الصورة المرفوعة",
|
||||||
"upload_new_picture": "تحميل صورة جديدة",
|
"upload_new_picture": "رفع صورة جديدة",
|
||||||
"current_password": "Current Password",
|
"upload_new_picture_from_url": "رفع صورة جديدة بواسطة رابط",
|
||||||
|
"current_password": "كلمة السر الحالية",
|
||||||
"change_password": "تغيير كلمة السر",
|
"change_password": "تغيير كلمة السر",
|
||||||
"change_password_error": "Invalid Password!",
|
"change_password_error": "كلمة سر غير صحيحة",
|
||||||
"change_password_error_wrong_current": "Your current password is not correct!",
|
"change_password_error_wrong_current": "كلمة السر الحالية ليست صحيحة",
|
||||||
"change_password_error_length": "Password too short!",
|
"change_password_error_length": "كلمة السر قصيرة",
|
||||||
"change_password_error_match": "Passwords must match!",
|
"change_password_error_match": "كلمة السر غير مطابقة لتأكيد كلمة السر",
|
||||||
"change_password_error_privileges": "You do not have the rights to change this password.",
|
"change_password_error_privileges": "ليس لديك الصلاحيات الكافية لتغيير كلمة السر هذه.",
|
||||||
"change_password_success": "Your password is updated!",
|
"change_password_success": "تم تحديث كلمة السر خاصتك.",
|
||||||
"confirm_password": "تأكيد كلمة السر",
|
"confirm_password": "تأكيد كلمة السر",
|
||||||
"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>",
|
"username_taken_workaround": "اسم المستخدم الذي اخترته سبق أخذه، لذا تم تغييره قليلا. أن الآن مسجل تحت الاسم <strong>%1</strong>",
|
||||||
"upload_picture": "تحميل الصورة",
|
"upload_picture": "ارفع الصورة",
|
||||||
"upload_a_picture": "تحميل صورة",
|
"upload_a_picture": "رفع صورة",
|
||||||
"image_spec": "You may only upload PNG, JPG, or GIF files",
|
"image_spec": "لايمكنك رفع إلا الصور ذات الصيغ PNG أو JPG أو GIF.",
|
||||||
"max": "max.",
|
"max": "الحد الأقصى",
|
||||||
"settings": "Settings",
|
"settings": "خيارات",
|
||||||
"show_email": "أظهر بريدي الإلكتروني",
|
"show_email": "أظهر بريدي الإلكتروني",
|
||||||
"digest_label": "Subscribe to Digest",
|
"show_fullname": "أظهر اسمي الكامل",
|
||||||
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
|
"restrict_chats": "لاتسمح بورود محادثات إلا من طرف المستخدمين الذين أتابعهم.",
|
||||||
"digest_off": "Off",
|
"digest_label": "اشترك في النشرة الدورية",
|
||||||
"digest_daily": "Daily",
|
"digest_description": "استلام اشعارات بآخر مستجدات هذا القسم (التنبيهات والمواضيع الجديدة) عبر البريد الإلكتروني وفقا لجدول زمني محدد.",
|
||||||
"digest_weekly": "Weekly",
|
"digest_off": "غير مفعل",
|
||||||
"digest_monthly": "Monthly",
|
"digest_daily": "يوميا",
|
||||||
"has_no_follower": "هذا المستخدم ليس لديه أي أتباع :(",
|
"digest_weekly": "أسبوعيًّا",
|
||||||
"follows_no_one": "هذا المستخدم لا يتبع أحد :(",
|
"digest_monthly": "شهريًّا",
|
||||||
"has_no_posts": "This user didn't post anything yet.",
|
"send_chat_notifications": "استلام رسالة إلكترونية عند ورود محادثة وأنا غير متصل.",
|
||||||
"has_no_topics": "This user didn't post any topics yet.",
|
"has_no_follower": "هذا المستخدم ليس لديه أي متابع :(",
|
||||||
|
"follows_no_one": "هذا المستخدم لا يتابع أحد :(",
|
||||||
|
"has_no_posts": "هذا المستخدم لم يكتب أي شيء بعد.",
|
||||||
|
"has_no_topics": "هذا المستخدم لم ينشئ أي موضوع بعد.",
|
||||||
"email_hidden": "البريد الإلكتروني مخفي",
|
"email_hidden": "البريد الإلكتروني مخفي",
|
||||||
"hidden": "مخفي",
|
"hidden": "مخفي",
|
||||||
"paginate_description": "Paginate topics and posts instead of using infinite scroll.",
|
"paginate_description": "عرض المواضيع والردود موزعة على صفحات عوض صفحة واحدة.",
|
||||||
"topics_per_page": "Topics per Page",
|
"topics_per_page": "المواضيع في كل صفحة",
|
||||||
"posts_per_page": "Posts per Page",
|
"posts_per_page": "الردود في كل صفحة",
|
||||||
"notification_sounds": "Play a sound when you receive a notification.",
|
"notification_sounds": "تشغيل ملف صوتي عند استلام التنبيهات.",
|
||||||
"browsing": "Browsing Settings",
|
"browsing": "خيارات التصفح",
|
||||||
"open_links_in_new_tab": "Open outgoing links in new tab?"
|
"open_links_in_new_tab": "فتح الروابط الخارجية في تبويب جديد؟",
|
||||||
|
"enable_topic_searching": "تفعيل خاصية البحث داخل المواضيع",
|
||||||
|
"topic_search_help": "في حالة تفعيلها، ستعوض خاصيةُ البحث داخل المواضيع خاصيةَ البحث الخاصة بالمتصفح، فتمكنك بالتالي بالبحث في الموضوع بأكمله دون الاقتصار على مايظهر في الشاشة فحسب.",
|
||||||
|
"follow_topics_you_reply_to": "متابعة المشاركات التي ترد عليها",
|
||||||
|
"follow_topics_you_create": "متابعة المشاركات التي تكتبها"
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,5 @@
|
|||||||
"search": "بحث",
|
"search": "بحث",
|
||||||
"enter_username": "أدخل اسم مستخدم للبحث",
|
"enter_username": "أدخل اسم مستخدم للبحث",
|
||||||
"load_more": "حمل المزيد",
|
"load_more": "حمل المزيد",
|
||||||
"user-not-found": "User not found!",
|
"users-found-search-took": "تم إيجاد %1 مستخدمـ(ين)! استغرق البحث %2 ميليثانية."
|
||||||
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
|
|
||||||
}
|
}
|
||||||
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": "browsing",
|
||||||
|
"no_replies": "কোন রিপ্লাই নেই",
|
||||||
|
"share_this_category": "এই বিভাগটি অন্যের সাথে ভাগাভাগি করুন",
|
||||||
|
"ignore": "উপেক্ষা করুন"
|
||||||
|
}
|
||||||
23
public/language/bn/email.json
Normal file
23
public/language/bn/email.json
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"password-reset-requested": "Password Reset Requested - %1!",
|
||||||
|
"welcome-to": "Welcome to %1",
|
||||||
|
"greeting_no_name": "Hello",
|
||||||
|
"greeting_with_name": "Hello %1",
|
||||||
|
"welcome.text1": "%1 এ নিবন্ধন করার জন্য আপনাকে ধন্যবাদ!",
|
||||||
|
"welcome.text2": "আপনার একাউন্ট এ্যাক্টিভেট করার জন্য, আপনি যে ইমেইল এড্রেস ব্যাবহার করে নিবন্ধন করেছেন তা যাচাই করতে হবে",
|
||||||
|
"welcome.cta": "আপনার ইমেইল এড্রেস নিশ্চিত করার জন্য এখানে ক্লিক করুন",
|
||||||
|
"reset.text1": "আমরা আপনার পাসওয়ার্ড রিসেট করার অনুরোধ পেয়েছি, সম্ভবত আপনি আপনার পাসওয়ার্ড ভুলে গিয়েছেন বলেই। তবে যদি তা না হয়ে থাকে, তাহলে এই মেইলকে উপেক্ষা করতে পারেন।",
|
||||||
|
"reset.text2": "পাসওয়ার্ড রিসেট করতে নিচের লিংকে ক্লিক করুন",
|
||||||
|
"reset.cta": "পাসওয়ার্ড রিসেট করতে এখানে ক্লিক করুন",
|
||||||
|
"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.no_topics": "There have been no active topics in the past %1",
|
||||||
|
"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!"
|
||||||
|
}
|
||||||
67
public/language/bn/error.json
Normal file
67
public/language/bn/error.json
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"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": "আপনার ইমেইল এড্রেস নিশ্চিত করা হয় নি, নিশ্চিত করতে এখানে ক্লিক করুন।",
|
||||||
|
"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": "ভুল ছবির টাইপ",
|
||||||
|
"group-name-too-short": "গ্রুপের নাম খুব ছোট",
|
||||||
|
"group-already-exists": "গ্রুপ ইতিমধ্যেই বিদ্যমান",
|
||||||
|
"group-name-change-not-allowed": "গ্রুপের নাম পরিবর্তনের অনুমতি নেই",
|
||||||
|
"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": "এই সদস্য তার বার্তালাপ সংরক্ষিত রেখেছেন। এই সদস্য আপনাকে ফলো করার পরই কেবলমাত্র আপনি তার সাথে চ্যাট করতে পারবেন",
|
||||||
|
"reputation-system-disabled": "সম্মাননা ব্যাবস্থা নিস্ক্রীয় রাখা হয়েছে",
|
||||||
|
"downvoting-disabled": "ঋণাত্মক ভোট নিস্ক্রীয় রাখা হয়েছে।",
|
||||||
|
"not-enough-reputation-to-downvote": "আপনার এই পোস্ট downvote করার জন্য পর্যাপ্ত সম্মাননা নেই",
|
||||||
|
"not-enough-reputation-to-flag": "এই পোষ্টকে ফ্লাগ করার জন্য আপনার পর্যাপ্ত সম্মাননা নেই",
|
||||||
|
"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": "নিবন্ধন এরর!"
|
||||||
|
}
|
||||||
77
public/language/bn/global.json
Normal file
77
public/language/bn/global.json
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"home": "নীড়পাতা",
|
||||||
|
"search": "অনুসন্ধান",
|
||||||
|
"buttons.close": "বন্ধ",
|
||||||
|
"403.title": "প্রবেশাধিকার প্রত্যাখ্যাত",
|
||||||
|
"403.message": "আপনি এমন একটি পাতায় যাওয়ার চেষ্টা করছেন যেখানে আপনার প্রবেশাধিকার নেই। আপনি কি <a href='/login'>প্রবেশ করে</a> আবার চেষ্টা করবেন?",
|
||||||
|
"404.title": "পাওয়া যায়নি",
|
||||||
|
"404.message": "আপনি এমন একটি পাতায় যাওয়ার চেষ্টা করছেন যার অস্তিত্ব নেই। <a href='/'>নীড়পাতায়</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.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": "নিরাপত্তা",
|
||||||
|
"delete_all": "সব মুছে ফেলুন"
|
||||||
|
}
|
||||||
8
public/language/bn/groups.json
Normal file
8
public/language/bn/groups.json
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"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"
|
||||||
|
}
|
||||||
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": "Type chat message here, press enter to send",
|
||||||
|
"chat.send": "প্রেরন করুন",
|
||||||
|
"chat.no_active": "আপনার কোন সচল কথোপকথন নেই",
|
||||||
|
"chat.user_typing": "%1 লিখছেন",
|
||||||
|
"chat.user_has_messaged_you": "%1 আপনাকে বার্তা পাঠিয়েছেন",
|
||||||
|
"chat.see_all": "সকল কথোপকথন দেখুন",
|
||||||
|
"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.seven_days": "7 Days",
|
||||||
|
"chat.thirty_days": "30 Days",
|
||||||
|
"chat.three_months": "3 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": "You are now leaving %1.",
|
||||||
|
"continue_to": "Continue to %1",
|
||||||
|
"return_to": "Return to %1",
|
||||||
|
"new_notification": "নতুন বিজ্ঞপ্তি",
|
||||||
|
"you_have_unread_notifications": "আপনার অপঠিত বিজ্ঞপ্তি আছে।",
|
||||||
|
"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> একটি উত্তর দিয়েছেন: <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> started following you.",
|
||||||
|
"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": "Topics tagged under \"%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:"
|
||||||
|
}
|
||||||
9
public/language/bn/recent.json
Normal file
9
public/language/bn/recent.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"title": "সাম্প্রতিক",
|
||||||
|
"day": "দিন",
|
||||||
|
"week": "সপ্তাহ",
|
||||||
|
"month": "মাস",
|
||||||
|
"year": "বছর",
|
||||||
|
"alltime": "সবসময় ",
|
||||||
|
"no_recent_topics": "কোন সাম্প্রতিক টপিক নেই। "
|
||||||
|
}
|
||||||
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": "Please enter your <strong>email address</strong> and we will send you an email with instructions on how to reset your account.",
|
||||||
|
"enter_email_address": "Enter Email Address",
|
||||||
|
"password_reset_sent": "Password Reset Sent",
|
||||||
|
"invalid_email": "Invalid Email / Email does not exist!"
|
||||||
|
}
|
||||||
4
public/language/bn/search.json
Normal file
4
public/language/bn/search.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"results_matching": "\"%2\" এর সাথে মিলিয়ে %1 ফলাফল পাওয়া গেছে, ( %3 seconds সময় লেগেছে )",
|
||||||
|
"no-matches": "কোন পোষ্ট খুঁজে পাওয়া যায় নি"
|
||||||
|
}
|
||||||
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": "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": "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."
|
||||||
|
}
|
||||||
96
public/language/bn/topic.json
Normal file
96
public/language/bn/topic.json
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
{
|
||||||
|
"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": "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": "Stop watching this topic",
|
||||||
|
"share_this_post": "Share this Post",
|
||||||
|
"thread_tools.title": "Topic Tools",
|
||||||
|
"thread_tools.markAsUnreadForAll": "Mark Unread",
|
||||||
|
"thread_tools.pin": "Pin Topic",
|
||||||
|
"thread_tools.unpin": "Unpin Topic",
|
||||||
|
"thread_tools.lock": "Lock Topic",
|
||||||
|
"thread_tools.unlock": "Unlock Topic",
|
||||||
|
"thread_tools.move": "Move Topic",
|
||||||
|
"thread_tools.move_all": "Move All",
|
||||||
|
"thread_tools.fork": "Fork Topic",
|
||||||
|
"thread_tools.delete": "Delete Topic",
|
||||||
|
"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?",
|
||||||
|
"load_categories": "Loading Categories",
|
||||||
|
"disabled_categories_note": "Disabled Categories are greyed out",
|
||||||
|
"confirm_move": "Move",
|
||||||
|
"confirm_fork": "Fork",
|
||||||
|
"favourite": "Favourite",
|
||||||
|
"favourites": "Favourites",
|
||||||
|
"favourites.has_no_favourites": "You don't have any favourites, favourite some posts to see them here!",
|
||||||
|
"loading_more_posts": "Loading More Posts",
|
||||||
|
"move_topic": "Move Topic",
|
||||||
|
"move_topics": "Move Topics",
|
||||||
|
"move_post": "Move Post",
|
||||||
|
"post_moved": "Post moved!",
|
||||||
|
"fork_topic": "Fork Topic",
|
||||||
|
"topic_will_be_moved_to": "This topic will be moved to the category",
|
||||||
|
"fork_topic_instruction": "Click the posts you want to fork",
|
||||||
|
"fork_no_pids": "No posts selected!",
|
||||||
|
"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",
|
||||||
|
"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"
|
||||||
|
}
|
||||||
9
public/language/bn/unread.json
Normal file
9
public/language/bn/unread.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"title": "Unread",
|
||||||
|
"no_unread_topics": "কোন অপঠিত টপিক নেই",
|
||||||
|
"load_more": "আরো লোড করুন",
|
||||||
|
"mark_as_read": "Mark as Read",
|
||||||
|
"selected": "Selected",
|
||||||
|
"all": "All",
|
||||||
|
"topics_marked_as_read.success": "Topics marked as read!"
|
||||||
|
}
|
||||||
75
public/language/bn/user.json
Normal file
75
public/language/bn/user.json
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
{
|
||||||
|
"banned": "নিষিদ্ধ",
|
||||||
|
"offline": "অফলাইন",
|
||||||
|
"username": "সদস্যের নাম",
|
||||||
|
"email": "ইমেইল",
|
||||||
|
"confirm_email": "ইমেইল নিশ্চিত করুন",
|
||||||
|
"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.",
|
||||||
|
"fullname": "পুর্ণ নাম",
|
||||||
|
"website": "ওয়েবসাইট",
|
||||||
|
"location": "স্থান",
|
||||||
|
"age": "বয়স",
|
||||||
|
"joined": "যোগদান করেছেন",
|
||||||
|
"lastonline": "সর্বশেষ অনলাইনে ছিলেন",
|
||||||
|
"profile": "প্রোফাইল",
|
||||||
|
"profile_views": "প্রোফাইল দেখেছেন",
|
||||||
|
"reputation": "সন্মাননা",
|
||||||
|
"favourites": "পছন্দের তালিকা",
|
||||||
|
"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": "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": "আপনি কেবলমাত্র PNG, JPG অথবা GIF ফাইল আপলোড করতে পারবেন",
|
||||||
|
"max": "সর্বোচ্চ",
|
||||||
|
"settings": "সেটিংস",
|
||||||
|
"show_email": "আমার ইমেইল দেখাও",
|
||||||
|
"show_fullname": "আমার সম্পূর্ণ নাম দেখাও",
|
||||||
|
"restrict_chats": "আমি যাদের ফলো করি কেবলমাত্র তাদের থেকে বার্তা গ্রহন করা হোক",
|
||||||
|
"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": "বন্ধ",
|
||||||
|
"digest_daily": "দৈনিক",
|
||||||
|
"digest_weekly": "সাপ্তাহিক",
|
||||||
|
"digest_monthly": "মাসিক",
|
||||||
|
"send_chat_notifications": "Send an email if a new chat message arrives and I am not online",
|
||||||
|
"has_no_follower": "This user doesn't have any followers :(",
|
||||||
|
"follows_no_one": "This user isn't following anyone :(",
|
||||||
|
"has_no_posts": "This user didn't post anything yet.",
|
||||||
|
"has_no_topics": "This user didn't post any topics yet.",
|
||||||
|
"email_hidden": "Email Hidden",
|
||||||
|
"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?",
|
||||||
|
"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."
|
||||||
|
}
|
||||||
9
public/language/bn/users.json
Normal file
9
public/language/bn/users.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"latest_users": "সর্বশেষ নিবন্ধিত সদস্যরা:",
|
||||||
|
"top_posters": "সর্বোচ্চ পোষ্টকারী",
|
||||||
|
"most_reputation": "সর্বোচ্চ সম্মাননাধারী",
|
||||||
|
"search": "খুঁজুন",
|
||||||
|
"enter_username": "ইউজারনেম এর ভিত্তিতে সার্চ করুন",
|
||||||
|
"load_more": "আরো লোড করুন",
|
||||||
|
"users-found-search-took": "%1 সদস্য(দের) খুঁজে পাওয়া গিয়েছে! সময় লেগেছে %2 ms."
|
||||||
|
}
|
||||||
@@ -3,5 +3,6 @@
|
|||||||
"no_topics": "<strong>V této kategorii zatím nejsou žádné příspěvky.</strong><br />Můžeš být první!",
|
"no_topics": "<strong>V této kategorii zatím nejsou žádné příspěvky.</strong><br />Můžeš být první!",
|
||||||
"browsing": "prohlíží",
|
"browsing": "prohlíží",
|
||||||
"no_replies": "Nikdo ještě neodpověděl",
|
"no_replies": "Nikdo ještě neodpověděl",
|
||||||
"share_this_category": "Share this category"
|
"share_this_category": "Share this category",
|
||||||
|
"ignore": "Ignorovat"
|
||||||
}
|
}
|
||||||
@@ -1,20 +1,23 @@
|
|||||||
{
|
{
|
||||||
"password-reset-requested": "Password Reset Requested - %1!",
|
"password-reset-requested": "Požadována obnova hesla - %1!",
|
||||||
"welcome-to": "Welcome to %1",
|
"welcome-to": "Vítejte v %1",
|
||||||
"greeting_no_name": "Hello",
|
"greeting_no_name": "Dobrý den",
|
||||||
"greeting_with_name": "Hello %1",
|
"greeting_with_name": "Dobrý den %1",
|
||||||
"welcome.text1": "Thank you for registering with %1!",
|
"welcome.text1": "Děkujeme vám za registraci s %1!",
|
||||||
"welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.",
|
"welcome.text2": "Pro úplnou aktivaci vašeho účtu potřebujeme ověřit vaší emailovou adresu.",
|
||||||
"welcome.cta": "Click here to confirm your email address",
|
"welcome.cta": "Klikněte zde pro potvrzení vaší emailové adresy",
|
||||||
"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.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": "To continue with the password reset, please click on the following link:",
|
"reset.text2": "Přejete-li si pokračovat v obnově vašeho hesla, klikněte, prosím, na následující odkaz:",
|
||||||
"reset.cta": "Click here to reset your password",
|
"reset.cta": "Klikněte zde, chcete-li obnovit vaše heslo",
|
||||||
"digest.notifications": "You have some unread notifications from %1:",
|
"digest.notifications": "Máte tu nepřečtená oznámení od %1:",
|
||||||
"digest.latest_topics": "Latest topics from %1",
|
"digest.latest_topics": "Nejnovější témata od %1",
|
||||||
"digest.cta": "Click here to visit %1",
|
"digest.cta": "Kliknutím zde navštívíte %1",
|
||||||
"digest.unsub.info": "This digest was sent to you due to your subscription settings.",
|
"digest.unsub.info": "Tento výtah vám byl odeslán, protože jste si to nastavili ve vašich odběrech.",
|
||||||
"digest.unsub.cta": "Click here to alter those settings",
|
"digest.no_topics": "Dosud tu nebyly žádné aktivní témata %1",
|
||||||
"digest.daily.no_topics": "There have been no active topics in the past day",
|
"notif.chat.subject": "Nová zpráva z chatu od %1",
|
||||||
"test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.",
|
"notif.chat.cta": "Chcete-li pokračovat v konverzaci, klikněte zde.",
|
||||||
"closing": "Thanks!"
|
"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.",
|
||||||
|
"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,56 +1,67 @@
|
|||||||
{
|
{
|
||||||
"invalid-data": "Invalid Data",
|
"invalid-data": "Neplatná data",
|
||||||
"not-logged-in": "You don't seem to be logged in.",
|
"not-logged-in": "Zdá se, že nejste přihlášen(a)",
|
||||||
"account-locked": "Your account has been locked temporarily",
|
"account-locked": "Váš účet byl dočasně uzamčen",
|
||||||
"search-requires-login": "Searching requires an account! Please login or register!",
|
"search-requires-login": "Chcete-li vyhledávat, musíte mít účet. Přihlašte se nebo zaregistrujte, prosím.",
|
||||||
"invalid-cid": "Invalid Category ID",
|
"invalid-cid": "Neplatné ID kategorie",
|
||||||
"invalid-tid": "Invalid Topic ID",
|
"invalid-tid": "Neplatné ID tématu",
|
||||||
"invalid-pid": "Invalid Post ID",
|
"invalid-pid": "Neplatné ID příspěvku",
|
||||||
"invalid-uid": "Invalid User ID",
|
"invalid-uid": "Neplatné ID uživatele",
|
||||||
"invalid-username": "Invalid Username",
|
"invalid-username": "Neplatné uživatelské jméno",
|
||||||
"invalid-email": "Invalid Email",
|
"invalid-email": "Neplatný email",
|
||||||
"invalid-title": "Invalid title!",
|
"invalid-title": "Neplatný titulek!",
|
||||||
"invalid-user-data": "Invalid User Data",
|
"invalid-user-data": "Neplatná uživatelská data",
|
||||||
"invalid-password": "Invalid Password",
|
"invalid-password": "Neplatné heslo",
|
||||||
"invalid-pagination-value": "Invalid pagination value",
|
"invalid-username-or-password": "Stanovte, prosím, oboje, jak uživatelské jméno, tak heslo",
|
||||||
"username-taken": "Username taken",
|
"invalid-search-term": "Neplatný výraz pro vyhledávání",
|
||||||
"email-taken": "Email taken",
|
"invalid-pagination-value": "Neplatná hodnota pro stránkování",
|
||||||
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
|
"username-taken": "Uživatelské jméno je již použito",
|
||||||
"username-too-short": "Username too short",
|
"email-taken": "Email je již použit",
|
||||||
"user-banned": "User banned",
|
"email-not-confirmed": "Vaše emailová adresa zatím nebyla potvrzena. Kliknutím zde svůj email potvrdíte.",
|
||||||
"no-category": "Category doesn't exist",
|
"username-too-short": "Uživatelské jméno je příliš krátké",
|
||||||
"no-topic": "Topic doesn't exist",
|
"username-too-long": "Uživatelské jméno je příliš dlouhé",
|
||||||
"no-post": "Post doesn't exist",
|
"user-banned": "Uživatel byl zakázán",
|
||||||
"no-group": "Group doesn't exist",
|
"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-user": "User doesn't exist",
|
"no-category": "Kategorie neexistuje",
|
||||||
"no-teaser": "Teaser doesn't exist",
|
"no-topic": "Téma neexistuje",
|
||||||
"no-privileges": "You don't have enough privileges for this action.",
|
"no-post": "Příspěvek neexistuje",
|
||||||
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
|
"no-group": "Skupina neexistuje",
|
||||||
"category-disabled": "Category disabled",
|
"no-user": "Uživatel neexistuje",
|
||||||
"topic-locked": "Topic Locked",
|
"no-teaser": "Teaser does not exist",
|
||||||
"still-uploading": "Please wait for uploads to complete.",
|
"no-privileges": "Na tuto akci nemáte dostatečná práva",
|
||||||
"content-too-short": "Please enter a longer post. At least %1 characters.",
|
"no-emailers-configured": "Protože není zaveden žádný emailový plugin, není možné odeslat testovací email.",
|
||||||
"title-too-short": "Please enter a longer title. At least %1 characters.",
|
"category-disabled": "Kategorie zakázána",
|
||||||
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
|
"topic-locked": "Téma uzamčeno",
|
||||||
"too-many-posts": "You can only post every %1 seconds.",
|
"still-uploading": "Vyčkejte, prosím, nežli se vše kompletně nahraje.",
|
||||||
"file-too-big": "Maximum allowed file size is %1 kbs",
|
"content-too-short": "Vložte, prosím, delší příspěvek. Příspěvky by měly obsahovat nejméně %1 znaků.",
|
||||||
"cant-vote-self-post": "You cannot vote for your own post",
|
"title-too-short": "Vložte, prosím, delší titulek. Titulky by měly obsahovat nejméně %1 znaků.",
|
||||||
"already-favourited": "You already favourited this post",
|
"title-too-long": "Vložte, prosím, kratší titulek. Titulky by neměly být delší, než-li %1 znaků.",
|
||||||
"already-unfavourited": "You already unfavourited this post",
|
"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",
|
||||||
"cant-ban-other-admins": "You can't ban other admins!",
|
"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",
|
||||||
"invalid-image-type": "Invalid image type",
|
"file-too-big": "Maximální povolená velikost souboru je %1 kbs - nahrávejte, prosím, menší soubory",
|
||||||
"group-name-too-short": "Group name too short",
|
"cant-vote-self-post": "Nemůžete hlasovat pro svůj vlastní příspěvek",
|
||||||
"group-already-exists": "Group already exists",
|
"already-favourited": "You have already favourited this post",
|
||||||
"group-name-change-not-allowed": "Group name change not allowed",
|
"already-unfavourited": "You have already unfavourited this post",
|
||||||
"post-already-deleted": "Post already deleted",
|
"cant-ban-other-admins": "Nemůžete zakazovat ostatní administrátory!",
|
||||||
"post-already-restored": "Post already restored",
|
"invalid-image-type": "Neplatný typ obrázku",
|
||||||
"topic-already-deleted": "Topic already deleted",
|
"group-name-too-short": "Název skupiny je příliš krátký",
|
||||||
"topic-already-restored": "Topic already restored",
|
"group-already-exists": "Skupina už exstuje",
|
||||||
|
"group-name-change-not-allowed": "Změna názvu skupiny není povolena",
|
||||||
|
"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.",
|
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
|
||||||
"invalid-file": "Invalid File",
|
"invalid-file": "Neplatný soubor",
|
||||||
"uploads-are-disabled": "Uploads are disabled",
|
"uploads-are-disabled": "Nahrávání je zakázáno",
|
||||||
"upload-error": "Upload Error : %1",
|
"upload-error": "Chyba při nahrávání : %1",
|
||||||
"signature-too-long": "Signature can't be longer than %1 characters!",
|
"signature-too-long": "Pardon, ale váš podpis nemůže být delší, než-li %1 znaků.",
|
||||||
"cant-chat-with-yourself": "You can't chat with yourself!",
|
"cant-chat-with-yourself": "Nemůžete chatovat sami se sebou!",
|
||||||
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post"
|
"chat-restricted": "This user has restricted their chat messages. They must follow you before you can chat with them",
|
||||||
|
"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.",
|
||||||
|
"registration-error": "Chyba při registraci"
|
||||||
}
|
}
|
||||||
@@ -10,24 +10,24 @@
|
|||||||
"500.message": "Jejda, vypadá to, že se něco pokazilo.",
|
"500.message": "Jejda, vypadá to, že se něco pokazilo.",
|
||||||
"register": "Registrovat",
|
"register": "Registrovat",
|
||||||
"login": "Přihlásit se",
|
"login": "Přihlásit se",
|
||||||
"please_log_in": "Please Log In",
|
"please_log_in": "Přihlašte se, prosím",
|
||||||
"logout": "Odhlásit se",
|
"logout": "Odhlásit se",
|
||||||
"posting_restriction_info": "Posting is currently restricted to registered members only, click here to log 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": "Welcome Back",
|
"welcome_back": "Vítejte zpět",
|
||||||
"you_have_successfully_logged_in": "You have successfully logged in",
|
"you_have_successfully_logged_in": "Vaše přihlášení proběhlo úspěšně",
|
||||||
"save_changes": "Uložit změny",
|
"save_changes": "Uložit změny",
|
||||||
"close": "Zrušit",
|
"close": "Zrušit",
|
||||||
"pagination": "Pagination",
|
"pagination": "Stránkování",
|
||||||
"pagination.out_of": "%1 out of %2",
|
"pagination.out_of": "%1 z %2",
|
||||||
"pagination.enter_index": "Enter index",
|
"pagination.enter_index": "Enter index",
|
||||||
"header.admin": "Administrace",
|
"header.admin": "Administrace",
|
||||||
"header.recent": "Aktuality",
|
"header.recent": "Aktuality",
|
||||||
"header.unread": "Nepřečtené",
|
"header.unread": "Nepřečtené",
|
||||||
"header.tags": "Tags",
|
"header.tags": "Tagy",
|
||||||
"header.popular": "Populární",
|
"header.popular": "Populární",
|
||||||
"header.users": "Uživatelé",
|
"header.users": "Uživatelé",
|
||||||
"header.chats": "Chats",
|
"header.chats": "Chats",
|
||||||
"header.notifications": "Notifications",
|
"header.notifications": "Oznámení",
|
||||||
"header.search": "Hledat",
|
"header.search": "Hledat",
|
||||||
"header.profile": "Můj profil",
|
"header.profile": "Můj profil",
|
||||||
"notifications.loading": "Načítání upozornění",
|
"notifications.loading": "Načítání upozornění",
|
||||||
@@ -36,14 +36,14 @@
|
|||||||
"previouspage": "Předchozí stránka",
|
"previouspage": "Předchozí stránka",
|
||||||
"nextpage": "Další stránka",
|
"nextpage": "Další stránka",
|
||||||
"alert.success": "Success",
|
"alert.success": "Success",
|
||||||
"alert.error": "Error",
|
"alert.error": "Chyba",
|
||||||
"alert.banned": "Banned",
|
"alert.banned": "Banned",
|
||||||
"alert.banned.message": "You have just been banned, you will now be logged out.",
|
"alert.banned.message": "You have just been banned, you will now be logged out.",
|
||||||
"alert.unfollow": "You are no longer following %1!",
|
"alert.unfollow": "You are no longer following %1!",
|
||||||
"alert.follow": "You are now following %1!",
|
"alert.follow": "You are now following %1!",
|
||||||
"online": "Online",
|
"online": "Online",
|
||||||
"users": "Users",
|
"users": "Uživatelé",
|
||||||
"topics": "Topics",
|
"topics": "Témata",
|
||||||
"posts": "Příspěvky",
|
"posts": "Příspěvky",
|
||||||
"views": "Zobrazení",
|
"views": "Zobrazení",
|
||||||
"reputation": "Reputation",
|
"reputation": "Reputation",
|
||||||
@@ -58,8 +58,8 @@
|
|||||||
"user_posted_ago": "%1 posted %2",
|
"user_posted_ago": "%1 posted %2",
|
||||||
"guest_posted_ago": "Guest posted %1",
|
"guest_posted_ago": "Guest posted %1",
|
||||||
"last_edited_by_ago": "last edited by %1 %2",
|
"last_edited_by_ago": "last edited by %1 %2",
|
||||||
"norecentposts": "No Recent Posts",
|
"norecentposts": "Žádné nedávné příspěvky",
|
||||||
"norecenttopics": "No Recent Topics",
|
"norecenttopics": "Žádné nedávné témata",
|
||||||
"recentposts": "Nedávné příspěvky",
|
"recentposts": "Nedávné příspěvky",
|
||||||
"recentips": "Recently Logged In IPs",
|
"recentips": "Recently Logged In IPs",
|
||||||
"away": "Pryč",
|
"away": "Pryč",
|
||||||
@@ -67,9 +67,11 @@
|
|||||||
"invisible": "Neviditelný",
|
"invisible": "Neviditelný",
|
||||||
"offline": "Offline",
|
"offline": "Offline",
|
||||||
"email": "Email",
|
"email": "Email",
|
||||||
"language": "Language",
|
"language": "Jazyk",
|
||||||
"guest": "Guest",
|
"guest": "Host",
|
||||||
"guests": "Guests",
|
"guests": "Hosté",
|
||||||
"updated.title": "Forum Updated",
|
"updated.title": "Fórum zaktualizováno",
|
||||||
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
|
"updated.message": "Toto fórum bylo právě aktualizováno na poslední verzi. Klikněte zde a obnovte tuto stránku.",
|
||||||
|
"privacy": "Privacy",
|
||||||
|
"delete_all": "Vymazat vše"
|
||||||
}
|
}
|
||||||
@@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"view_group": "View Group",
|
"groups": "Skupiny",
|
||||||
"details.title": "Group Details",
|
"view_group": "Prohlédnout skupinu",
|
||||||
"details.members": "Member List",
|
"details.title": "podrobnosti skupiny",
|
||||||
"details.has_no_posts": "This group's members have not made any posts.",
|
"details.members": "Seznam členů",
|
||||||
"details.latest_posts": "Latest Posts"
|
"details.has_no_posts": "Členové této skupiny dosud neodeslali ani jeden příspěvek.",
|
||||||
|
"details.latest_posts": "Nejnovější příspěvky"
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"username": "Username / Email",
|
"username": "Uživatelské jméno / Email",
|
||||||
"remember_me": "Zapamatovat si mě?",
|
"remember_me": "Zapamatovat si mě?",
|
||||||
"forgot_password": "Zapomněli jste heslo?",
|
"forgot_password": "Zapomněli jste heslo?",
|
||||||
"alternative_logins": "Další způsoby přihlášení",
|
"alternative_logins": "Další způsoby přihlášení",
|
||||||
"failed_login_attempt": "Přihlášení se nezdařilo, zkuste to prosím znovu.",
|
"failed_login_attempt": "Přihlášení se nezdařilo, zkuste to prosím znovu.",
|
||||||
"login_successful": "Přihlášení proběhlo úspěšně!",
|
"login_successful": "Přihlášení proběhlo úspěšně!",
|
||||||
"dont_have_account": "Don't have an account?"
|
"dont_have_account": "Nemáte účet?"
|
||||||
}
|
}
|
||||||
@@ -1,17 +1,20 @@
|
|||||||
{
|
{
|
||||||
"chat.chatting_with": "Chat s <span id=\"chat-with-name\"></span>",
|
"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.send": "Odeslat",
|
||||||
"chat.no_active": "Nemáte žádné aktivní konverzace.",
|
"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.user_has_messaged_you": "%1 has messaged you.",
|
||||||
"chat.see_all": "See all Chats",
|
"chat.see_all": "See all Chats",
|
||||||
"chat.no-messages": "Please select a recipient to view chat message history",
|
"chat.no-messages": "Please select a recipient to view chat message history",
|
||||||
"chat.recent-chats": "Recent Chats",
|
"chat.recent-chats": "Recent Chats",
|
||||||
"chat.contacts": "Contacts",
|
"chat.contacts": "Kontakty",
|
||||||
"chat.message-history": "Message History",
|
"chat.message-history": "Historie zpráv",
|
||||||
"chat.pop-out": "Pop out chat",
|
"chat.pop-out": "Pop out chat",
|
||||||
"chat.maximize": "Maximize",
|
"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_in": "%1 said in %2:",
|
||||||
"composer.user_said": "%1 said:",
|
"composer.user_said": "%1 said:",
|
||||||
"composer.discard": "Are you sure you wish to discard this post?"
|
"composer.discard": "Are you sure you wish to discard this post?"
|
||||||
|
|||||||
@@ -10,11 +10,15 @@
|
|||||||
"new_notification": "New Notification",
|
"new_notification": "New Notification",
|
||||||
"you_have_unread_notifications": "You have unread notifications.",
|
"you_have_unread_notifications": "You have unread notifications.",
|
||||||
"new_message_from": "New message from <strong>%1</strong>",
|
"new_message_from": "New message from <strong>%1</strong>",
|
||||||
"upvoted_your_post": "<strong>%1</strong> has upvoted your post.",
|
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
|
||||||
"favourited_your_post": "<strong>%1</strong> has favourited your post.",
|
"moved_your_post": "<strong>%1</strong> has moved your post.",
|
||||||
"user_flagged_post": "<strong>%1</strong> flagged a 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_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_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": "Email Confirmed",
|
||||||
"email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.",
|
"email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.",
|
||||||
"email-confirm-error": "An error occurred...",
|
"email-confirm-error": "An error occurred...",
|
||||||
|
|||||||
@@ -12,5 +12,7 @@
|
|||||||
"user.posts": "Posts made by %1",
|
"user.posts": "Posts made by %1",
|
||||||
"user.topics": "Topics created by %1",
|
"user.topics": "Topics created by %1",
|
||||||
"user.favourites": "%1's Favourite Posts",
|
"user.favourites": "%1's Favourite Posts",
|
||||||
"user.settings": "User Settings"
|
"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:"
|
||||||
}
|
}
|
||||||
@@ -4,5 +4,6 @@
|
|||||||
"week": "Týden",
|
"week": "Týden",
|
||||||
"month": "Měsíc",
|
"month": "Měsíc",
|
||||||
"year": "Year",
|
"year": "Year",
|
||||||
|
"alltime": "All Time",
|
||||||
"no_recent_topics": "There are no recent topics."
|
"no_recent_topics": "There are no recent topics."
|
||||||
}
|
}
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
"new_password": "Nové heslo",
|
"new_password": "Nové heslo",
|
||||||
"repeat_password": "Potvrzení hesla",
|
"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": "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",
|
"password_reset_sent": "Obnova hesla odeslána",
|
||||||
"invalid_email": "Špatný email / Email neexistuje!"
|
"invalid_email": "Špatný email / Email neexistuje!"
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
{
|
{
|
||||||
"results_matching": "%1 result(s) matching \"%2\", (%3 seconds)"
|
"results_matching": "%1 result(s) matching \"%2\", (%3 seconds)",
|
||||||
|
"no-matches": "No posts found"
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"no_tag_topics": "There are no topics with this tag.",
|
"no_tag_topics": "Není zde žádné téma s tímto tagem.",
|
||||||
"tags": "Tags",
|
"tags": "Tagy",
|
||||||
"enter_tags_here": "Enter tags here. Press enter after each tag.",
|
"enter_tags_here": "Zde vložte tagy. Po každém vložení tagu zmáčkněte enter.",
|
||||||
"no_tags": "There are no tags yet."
|
"enter_tags_here_short": "Vložte tagy ...",
|
||||||
|
"no_tags": "Zatím tu není žádný tag."
|
||||||
}
|
}
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"topic": "Téma",
|
"topic": "Téma",
|
||||||
"topic_id": "Topic ID",
|
"topic_id": "ID tématu",
|
||||||
"topic_id_placeholder": "Enter topic ID",
|
"topic_id_placeholder": "Vložte ID tématu",
|
||||||
"no_topics_found": "Nebyla nalezena žádná témata!",
|
"no_topics_found": "Nebyla nalezena žádná témata!",
|
||||||
"no_posts_found": "No posts found!",
|
"no_posts_found": "Nebyly nalezeny žádné příspěvky!",
|
||||||
"post_is_deleted": "This post is deleted!",
|
"post_is_deleted": "Tento příspěvek je vymazán!",
|
||||||
"profile": "Profil",
|
"profile": "Profil",
|
||||||
"posted_by": "Posted by %1",
|
"posted_by": "Posted by %1",
|
||||||
"posted_by_guest": "Posted by Guest",
|
"posted_by_guest": "Posted by Guest",
|
||||||
@@ -18,7 +18,6 @@
|
|||||||
"restore": "Restore",
|
"restore": "Restore",
|
||||||
"move": "Přesunout",
|
"move": "Přesunout",
|
||||||
"fork": "Rozdělit",
|
"fork": "Rozdělit",
|
||||||
"banned": "banned",
|
|
||||||
"link": "Odkaz",
|
"link": "Odkaz",
|
||||||
"share": "Sdílet",
|
"share": "Sdílet",
|
||||||
"tools": "Nástroje",
|
"tools": "Nástroje",
|
||||||
@@ -28,15 +27,17 @@
|
|||||||
"flag_title": "Flag this post for moderation",
|
"flag_title": "Flag this post for moderation",
|
||||||
"flag_confirm": "Are you sure you want to flag this post?",
|
"flag_confirm": "Are you sure you want to flag this post?",
|
||||||
"flag_success": "This post has been flagged for moderation.",
|
"flag_success": "This post has been flagged for moderation.",
|
||||||
"deleted_message": "This thread has been deleted. Only users with thread management privileges can see it.",
|
"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.",
|
"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.",
|
"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.",
|
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
|
||||||
"markAsUnreadForAll.success": "Topic marked as unread for all.",
|
"markAsUnreadForAll.success": "Topic marked as unread for all.",
|
||||||
"watch": "Watch",
|
"watch": "Watch",
|
||||||
|
"unwatch": "Unwatch",
|
||||||
"watch.title": "Be notified of new replies in this topic",
|
"watch.title": "Be notified of new replies in this topic",
|
||||||
|
"unwatch.title": "Stop watching this topic",
|
||||||
"share_this_post": "Share this Post",
|
"share_this_post": "Share this Post",
|
||||||
"thread_tools.title": "Nástroje",
|
"thread_tools.title": "Topic Tools",
|
||||||
"thread_tools.markAsUnreadForAll": "Označit jako nepřečtené",
|
"thread_tools.markAsUnreadForAll": "Označit jako nepřečtené",
|
||||||
"thread_tools.pin": "Pin Topic",
|
"thread_tools.pin": "Pin Topic",
|
||||||
"thread_tools.unpin": "Unpin Topic",
|
"thread_tools.unpin": "Unpin Topic",
|
||||||
@@ -46,11 +47,11 @@
|
|||||||
"thread_tools.move_all": "Move All",
|
"thread_tools.move_all": "Move All",
|
||||||
"thread_tools.fork": "Fork Topic",
|
"thread_tools.fork": "Fork Topic",
|
||||||
"thread_tools.delete": "Delete Topic",
|
"thread_tools.delete": "Delete Topic",
|
||||||
"thread_tools.delete_confirm": "Are you sure you want to delete this thread?",
|
"thread_tools.delete_confirm": "Are you sure you want to delete this topic?",
|
||||||
"thread_tools.restore": "Restore Topic",
|
"thread_tools.restore": "Restore Topic",
|
||||||
"thread_tools.restore_confirm": "Are you sure you want to restore this thread?",
|
"thread_tools.restore_confirm": "Are you sure you want to restore this topic?",
|
||||||
"thread_tools.purge": "Purge Topic",
|
"thread_tools.purge": "Purge Topic",
|
||||||
"thread_tools.purge_confirm": "Are you sure you want to purge this thread?",
|
"thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
|
||||||
"topic_move_success": "This topic has been successfully moved to %1",
|
"topic_move_success": "This topic has been successfully moved to %1",
|
||||||
"post_delete_confirm": "Are you sure you want to delete this post?",
|
"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_restore_confirm": "Are you sure you want to restore this post?",
|
||||||
@@ -71,7 +72,7 @@
|
|||||||
"topic_will_be_moved_to": "Toto téma bude přesunuto do kategorie",
|
"topic_will_be_moved_to": "Toto téma bude přesunuto do kategorie",
|
||||||
"fork_topic_instruction": "Vyber příspěvky, které chceš oddělit",
|
"fork_topic_instruction": "Vyber příspěvky, které chceš oddělit",
|
||||||
"fork_no_pids": "Žádné příspěvky nebyly vybrány!",
|
"fork_no_pids": "Žádné příspěvky nebyly vybrány!",
|
||||||
"fork_success": "Téma bylo úspěšně rozděleno!",
|
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
|
||||||
"composer.title_placeholder": "Enter your topic title here...",
|
"composer.title_placeholder": "Enter your topic title here...",
|
||||||
"composer.discard": "Discard",
|
"composer.discard": "Discard",
|
||||||
"composer.submit": "Submit",
|
"composer.submit": "Submit",
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"title": "Unread",
|
"title": "Nepřečtené",
|
||||||
"no_unread_topics": "Nejsou zde žádné nepřečtené témata.",
|
"no_unread_topics": "Nejsou zde žádné nepřečtené témata.",
|
||||||
"load_more": "Načíst další",
|
"load_more": "Načíst další",
|
||||||
"mark_as_read": "Mark as Read",
|
"mark_as_read": "Označit jako přeštené",
|
||||||
"selected": "Selected",
|
"selected": "Vybrané",
|
||||||
"all": "All",
|
"all": "Vše",
|
||||||
"topics_marked_as_read.success": "Topics marked as read!"
|
"topics_marked_as_read.success": "Téma bylo označeno jako přečtené!"
|
||||||
}
|
}
|
||||||
@@ -3,14 +3,16 @@
|
|||||||
"offline": "Offline",
|
"offline": "Offline",
|
||||||
"username": "Uživatelské jméno",
|
"username": "Uživatelské jméno",
|
||||||
"email": "Email",
|
"email": "Email",
|
||||||
"confirm_email": "Confirm Email",
|
"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í",
|
"fullname": "Jméno a příjmení",
|
||||||
"website": "Webové stránky",
|
"website": "Webové stránky",
|
||||||
"location": "Poloha",
|
"location": "Poloha",
|
||||||
"age": "Věk",
|
"age": "Věk",
|
||||||
"joined": "Registrován",
|
"joined": "Registrován",
|
||||||
"lastonline": "Naposledy online",
|
"lastonline": "Naposledy online",
|
||||||
"profile": "Profile",
|
"profile": "Profil",
|
||||||
"profile_views": "Zobrazení profilu",
|
"profile_views": "Zobrazení profilu",
|
||||||
"reputation": "Reputace",
|
"reputation": "Reputace",
|
||||||
"favourites": "Oblíbené",
|
"favourites": "Oblíbené",
|
||||||
@@ -22,14 +24,15 @@
|
|||||||
"chat": "Chat",
|
"chat": "Chat",
|
||||||
"follow": "Follow",
|
"follow": "Follow",
|
||||||
"unfollow": "Unfollow",
|
"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",
|
"change_picture": "Změnit obrázek",
|
||||||
"edit": "Upravit",
|
"edit": "Upravit",
|
||||||
"uploaded_picture": "Nahraný obrázek",
|
"uploaded_picture": "Nahraný obrázek",
|
||||||
"upload_new_picture": "Nahrát nový obrázek",
|
"upload_new_picture": "Nahrát nový obrázek",
|
||||||
"current_password": "Current Password",
|
"upload_new_picture_from_url": "Upload New Picture From URL",
|
||||||
|
"current_password": "Současné heslo",
|
||||||
"change_password": "Změnit 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_wrong_current": "Your current password is not correct!",
|
||||||
"change_password_error_length": "Password too short!",
|
"change_password_error_length": "Password too short!",
|
||||||
"change_password_error_match": "Passwords must match!",
|
"change_password_error_match": "Passwords must match!",
|
||||||
@@ -44,12 +47,15 @@
|
|||||||
"max": "max.",
|
"max": "max.",
|
||||||
"settings": "Nastavení",
|
"settings": "Nastavení",
|
||||||
"show_email": "Zobrazovat můj email v profilu",
|
"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_label": "Subscribe to Digest",
|
||||||
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
|
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
|
||||||
"digest_off": "Off",
|
"digest_off": "Off",
|
||||||
"digest_daily": "Daily",
|
"digest_daily": "Daily",
|
||||||
"digest_weekly": "Weekly",
|
"digest_weekly": "Weekly",
|
||||||
"digest_monthly": "Monthly",
|
"digest_monthly": "Monthly",
|
||||||
|
"send_chat_notifications": "Send an email if a new chat message arrives and I am not online",
|
||||||
"has_no_follower": "Tohoto uživatele nikdo nesleduje :(",
|
"has_no_follower": "Tohoto uživatele nikdo nesleduje :(",
|
||||||
"follows_no_one": "Tento uživatel nikoho nesleduje :(",
|
"follows_no_one": "Tento uživatel nikoho nesleduje :(",
|
||||||
"has_no_posts": "This user didn't post anything yet.",
|
"has_no_posts": "This user didn't post anything yet.",
|
||||||
@@ -61,5 +67,9 @@
|
|||||||
"posts_per_page": "Posts per Page",
|
"posts_per_page": "Posts per Page",
|
||||||
"notification_sounds": "Play a sound when you receive a notification.",
|
"notification_sounds": "Play a sound when you receive a notification.",
|
||||||
"browsing": "Browsing Settings",
|
"browsing": "Browsing Settings",
|
||||||
"open_links_in_new_tab": "Open outgoing links in new tab?"
|
"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,6 +5,5 @@
|
|||||||
"search": "Vyhledávat",
|
"search": "Vyhledávat",
|
||||||
"enter_username": "Zadej uživatelské jméno k hledání",
|
"enter_username": "Zadej uživatelské jméno k hledání",
|
||||||
"load_more": "Načíst další",
|
"load_more": "Načíst další",
|
||||||
"user-not-found": "User not found!",
|
"users-found-search-took": "Nazelezeno: %1 uživetel(ů)! Vyhledání trvalo %2 ms."
|
||||||
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
|
|
||||||
}
|
}
|
||||||
@@ -3,5 +3,6 @@
|
|||||||
"no_topics": "<strong>Es gibt noch keine Themen in dieser Kategorie.</strong><br />Warum beginnst du nicht das erste?",
|
"no_topics": "<strong>Es gibt noch keine Themen in dieser Kategorie.</strong><br />Warum beginnst du nicht das erste?",
|
||||||
"browsing": "Aktiv",
|
"browsing": "Aktiv",
|
||||||
"no_replies": "Niemand hat geantwortet",
|
"no_replies": "Niemand hat geantwortet",
|
||||||
"share_this_category": "Teile diese Kategorie"
|
"share_this_category": "Teile diese Kategorie",
|
||||||
|
"ignore": "Ignorieren"
|
||||||
}
|
}
|
||||||
@@ -9,12 +9,15 @@
|
|||||||
"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.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.text2": "Klicke bitte auf den folgenden Link, um mit der Zurücksetzung deines Passworts fortzufahren:",
|
||||||
"reset.cta": "Klicke hier, um dein Passwort zurückzusetzen",
|
"reset.cta": "Klicke hier, um dein Passwort zurückzusetzen",
|
||||||
"digest.notifications": "Du hast einige ungelesene Benachrichtigungen vom %1:",
|
"digest.notifications": "Du hast ungelesene Benachrichtigungen von %1:",
|
||||||
"digest.latest_topics": "Aktuellste Themen vom %1",
|
"digest.latest_topics": "Aktuellste Themen vom %1",
|
||||||
"digest.cta": "Klicke hier, um %1 zu besuchen",
|
"digest.cta": "Klicke hier, um %1 zu besuchen",
|
||||||
"digest.unsub.info": "Diese Zusammenfassung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
|
"digest.unsub.info": "Diese Zusammenfassung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
|
||||||
"digest.unsub.cta": "Klicke hier, um diese Einstellungen zu ändern",
|
"digest.no_topics": "Es gab keine aktiven Themen in den letzten %1",
|
||||||
"digest.daily.no_topics": "Es gab heute keine aktiven Themen",
|
"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.",
|
||||||
"test.text1": "Dies ist eine Test-E-Mail, um zu überprüfen, ob der E-Mailer deines NodeBB korrekt eingestellt wurde.",
|
"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!"
|
"closing": "Danke!"
|
||||||
}
|
}
|
||||||
@@ -12,28 +12,33 @@
|
|||||||
"invalid-title": "Ungültiger Titel",
|
"invalid-title": "Ungültiger Titel",
|
||||||
"invalid-user-data": "Ungültige Benutzerdaten",
|
"invalid-user-data": "Ungültige Benutzerdaten",
|
||||||
"invalid-password": "Ungültiges Passwort",
|
"invalid-password": "Ungültiges Passwort",
|
||||||
|
"invalid-username-or-password": "Bitte gebe einen Benutzernamen und ein Passwort an",
|
||||||
|
"invalid-search-term": "Ungültige Suchanfrage",
|
||||||
"invalid-pagination-value": "Die Nummerierung ist ungültig",
|
"invalid-pagination-value": "Die Nummerierung ist ungültig",
|
||||||
"username-taken": "Der Benutzername ist bereits vergeben",
|
"username-taken": "Der Benutzername ist bereits vergeben",
|
||||||
"email-taken": "Die E-Mail-Adresse ist bereits vergeben",
|
"email-taken": "Die E-Mail-Adresse ist bereits vergeben",
|
||||||
"email-not-confirmed": "Deine E-Mail wurde noch nicht bestätigt. Bitte klicke hier, um deine E-Mail zu bestätigen.",
|
"email-not-confirmed": "Deine E-Mail wurde noch nicht bestätigt. Bitte klicke hier, um deine E-Mail zu bestätigen.",
|
||||||
"username-too-short": "Benutzername ist zu kurz",
|
"username-too-short": "Benutzername ist zu kurz",
|
||||||
|
"username-too-long": "Der Benutzername ist zu lang",
|
||||||
"user-banned": "Der Benutzer ist gesperrt",
|
"user-banned": "Der Benutzer ist gesperrt",
|
||||||
|
"user-too-new": "Entschuldigung, du musst %1 Sekunden warten, bevor du deinen ersten Beitrag verfassen kannst!",
|
||||||
"no-category": "Die Kategorie existiert nicht",
|
"no-category": "Die Kategorie existiert nicht",
|
||||||
"no-topic": "Das Thema existiert nicht",
|
"no-topic": "Das Thema existiert nicht",
|
||||||
"no-post": "Der Beitrag existiert nicht",
|
"no-post": "Der Beitrag existiert nicht",
|
||||||
"no-group": "Die Gruppe existiert nicht",
|
"no-group": "Die Gruppe existiert nicht",
|
||||||
"no-user": "Der Benutzer existiert nicht",
|
"no-user": "Der Benutzer existiert nicht",
|
||||||
"no-teaser": "Kurztext existiert nicht",
|
"no-teaser": "Zusammenfassung existiert nicht",
|
||||||
"no-privileges": "Du verfügst nicht über ausreichende Berechtigungen, um die Aktion durchzuführen.",
|
"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.",
|
"no-emailers-configured": "Es wurde keine E-Mail-Plugins geladen, weshalb eine Test-E-Mail nicht gesendet werden konnte.",
|
||||||
"category-disabled": "Kategorie ist deaktiviert",
|
"category-disabled": "Kategorie ist deaktiviert",
|
||||||
"topic-locked": "Thema ist gesperrt",
|
"topic-locked": "Thema ist gesperrt",
|
||||||
"still-uploading": "Bitte warte bis der Vorgang abgeschlossen ist.",
|
"still-uploading": "Bitte warte bis der Vorgang abgeschlossen ist.",
|
||||||
"content-too-short": "Der Beitrag muss mindestens %1 Zeichen enthalten.",
|
"content-too-short": "Bitte gib einen längeren Beitrag ein. Beiträge sollten mindestens %1 Zeichen enthalten.",
|
||||||
"title-too-short": "Der Titel muss 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.",
|
"title-too-long": "Der Titel darf maximal %1 Zeichen enthalten.",
|
||||||
"too-many-posts": "Du kannst maximal alle %1 Sekunden einen Beitrag erstellen.",
|
"too-many-posts": "Du kannst maximal alle %1 Sekunden einen Beitrag erstellen - bitte warte, bevor du einen neuen Beitrag erstellst",
|
||||||
"file-too-big": "Die maximale Dateigröße beträgt %1 kbs",
|
"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.",
|
"cant-vote-self-post": "Du kannst deinen eigenen Beitrag nicht bewerten.",
|
||||||
"already-favourited": "Dieser Beitrag ist bereits in deinen Favoriten enthalten",
|
"already-favourited": "Dieser Beitrag ist bereits in deinen Favoriten enthalten",
|
||||||
"already-unfavourited": "Du hast diesen Beitrag bereits aus deinen Favoriten entfernt",
|
"already-unfavourited": "Du hast diesen Beitrag bereits aus deinen Favoriten entfernt",
|
||||||
@@ -42,15 +47,21 @@
|
|||||||
"group-name-too-short": "Gruppenname zu kurz",
|
"group-name-too-short": "Gruppenname zu kurz",
|
||||||
"group-already-exists": "Gruppe existiert bereits",
|
"group-already-exists": "Gruppe existiert bereits",
|
||||||
"group-name-change-not-allowed": "Du kannst den Namen der Gruppe nicht ändern",
|
"group-name-change-not-allowed": "Du kannst den Namen der Gruppe nicht ändern",
|
||||||
"post-already-deleted": "Beitrag wurde bereits gelöscht",
|
"post-already-deleted": "Dieser Beitrag ist bereits gelöscht worden",
|
||||||
"post-already-restored": "Der Beitrag wurde bereits wiederhergestellt",
|
"post-already-restored": "Dieser Beitrag ist bereits wiederhergestellt worden",
|
||||||
"topic-already-deleted": "Das Thema wurde bereits gelöscht",
|
"topic-already-deleted": "Dieses Thema ist bereits gelöscht worden",
|
||||||
"topic-already-restored": "Das Thema wurde bereits wiederhergestellt",
|
"topic-already-restored": "Dieses Thema ist bereits wiederhergestellt worden",
|
||||||
"topic-thumbnails-are-disabled": "Vorschaubilder für Themen sind deaktiviert",
|
"topic-thumbnails-are-disabled": "Vorschaubilder für Themen sind deaktiviert",
|
||||||
"invalid-file": "Datei ungültig",
|
"invalid-file": "Datei ungültig",
|
||||||
"uploads-are-disabled": "Uploads sind deaktiviert",
|
"uploads-are-disabled": "Uploads sind deaktiviert",
|
||||||
"upload-error": "Upload-Fehler: %1",
|
"upload-error": "Upload-Fehler: %1",
|
||||||
"signature-too-long": "Die Signatur darf maximal %1 Zeichen enthalten!",
|
"signature-too-long": "Entschuldigung, deine Signatur darf maximal %1 Zeichen enthalten.",
|
||||||
"cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!",
|
"cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!",
|
||||||
"not-enough-reputation-to-downvote": "Deine Reputation ist zu niedrig, um diesen Beitrag negativ zu bewerten."
|
"chat-restricted": "Dieser Benutzer hat seine Chatfunktion eingeschränkt. Du kannst nur mit diesem Benutzer chatten, wenn er dir folgt.",
|
||||||
|
"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": "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"
|
||||||
}
|
}
|
||||||
@@ -71,5 +71,7 @@
|
|||||||
"guest": "Gast",
|
"guest": "Gast",
|
||||||
"guests": "Gäste",
|
"guests": "Gäste",
|
||||||
"updated.title": "Forum aktualisiert",
|
"updated.title": "Forum aktualisiert",
|
||||||
"updated.message": "Dieses Forum wurde gerade auf die neueste Version aktualisiert. Klicke hier, um die Seite neuzuladen."
|
"updated.message": "Dieses Forum wurde gerade auf die neueste Version aktualisiert. Klicke hier, um die Seite neuzuladen.",
|
||||||
|
"privacy": "Privatsphäre",
|
||||||
|
"delete_all": "Alles löschen"
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
"groups": "Gruppen",
|
||||||
"view_group": "Gruppe betrachten",
|
"view_group": "Gruppe betrachten",
|
||||||
"details.title": "Gruppendetails",
|
"details.title": "Gruppendetails",
|
||||||
"details.members": "Mitgliederliste",
|
"details.members": "Mitgliederliste",
|
||||||
|
|||||||
@@ -12,6 +12,9 @@
|
|||||||
"chat.message-history": "Nachrichtenverlauf",
|
"chat.message-history": "Nachrichtenverlauf",
|
||||||
"chat.pop-out": "Chat als Pop-out anzeigen",
|
"chat.pop-out": "Chat als Pop-out anzeigen",
|
||||||
"chat.maximize": "Maximieren",
|
"chat.maximize": "Maximieren",
|
||||||
|
"chat.seven_days": "7 Tage",
|
||||||
|
"chat.thirty_days": "30 Tage",
|
||||||
|
"chat.three_months": "3 Monate",
|
||||||
"composer.user_said_in": "%1 sagte in %2:",
|
"composer.user_said_in": "%1 sagte in %2:",
|
||||||
"composer.user_said": "%1 sagte:",
|
"composer.user_said": "%1 sagte:",
|
||||||
"composer.discard": "Bist du sicher, dass du diesen Post verwerfen möchtest?"
|
"composer.discard": "Bist du sicher, dass du diesen Post verwerfen möchtest?"
|
||||||
|
|||||||
@@ -10,11 +10,15 @@
|
|||||||
"new_notification": "Neue Benachrichtigung",
|
"new_notification": "Neue Benachrichtigung",
|
||||||
"you_have_unread_notifications": "Du hast ungelesene Benachrichtigungen.",
|
"you_have_unread_notifications": "Du hast ungelesene Benachrichtigungen.",
|
||||||
"new_message_from": "Neue Nachricht von <strong>%1</strong>",
|
"new_message_from": "Neue Nachricht von <strong>%1</strong>",
|
||||||
"upvoted_your_post": "<strong>%1</strong> hat deinen Beitrag positiv bewertet.",
|
"upvoted_your_post_in": "<strong>%1</strong> hat deinen Beitrag in <strong>%2</strong> positiv bewertet.",
|
||||||
"favourited_your_post": "<strong>%1</strong> favorisiert deinen Beitrag.",
|
"moved_your_post": "<strong>%1</strong> hat deinen Beitrag verschoben.",
|
||||||
"user_flagged_post": "<strong>%1</strong> hat einen Beitrag markiert.",
|
"moved_your_topic": "<strong>%1</strong> hat dein Thema verschoben.",
|
||||||
|
"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_to": "<strong>%1</strong> hat auf <strong>%2</strong> geantwortet.",
|
||||||
|
"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_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",
|
"email-confirmed": "E-Mail bestätigt",
|
||||||
"email-confirmed-message": "Vielen Dank für Ihre E-Mail-Validierung. Ihr Konto ist nun vollständig aktiviert.",
|
"email-confirmed-message": "Vielen Dank für Ihre E-Mail-Validierung. Ihr Konto ist nun vollständig aktiviert.",
|
||||||
"email-confirm-error": "Es ist ein Fehler aufgetreten ...",
|
"email-confirm-error": "Es ist ein Fehler aufgetreten ...",
|
||||||
|
|||||||
@@ -5,12 +5,14 @@
|
|||||||
"recent": "Neueste Themen",
|
"recent": "Neueste Themen",
|
||||||
"users": "Registrierte User",
|
"users": "Registrierte User",
|
||||||
"notifications": "Benachrichtigungen",
|
"notifications": "Benachrichtigungen",
|
||||||
"tags": "Topics tagged under \"%1\"",
|
"tags": "Themen markiert unter \"%1\"",
|
||||||
"user.edit": "Bearbeite \"%1\"",
|
"user.edit": "Bearbeite \"%1\"",
|
||||||
"user.following": "Nutzer, die %1 folgt",
|
"user.following": "Nutzer, die %1 folgt",
|
||||||
"user.followers": "Nutzer, die %1 folgen",
|
"user.followers": "Nutzer, die %1 folgen",
|
||||||
"user.posts": "Beiträge von %1",
|
"user.posts": "Beiträge von %1",
|
||||||
"user.topics": "Themen von %1",
|
"user.topics": "Themen von %1",
|
||||||
"user.favourites": "Von %1 favorisierte Beiträge",
|
"user.favourites": "Von %1 favorisierte Beiträge",
|
||||||
"user.settings": "Benutzer-Einstellungen"
|
"user.settings": "Benutzer-Einstellungen",
|
||||||
|
"maintenance.text": "%1 befindet sich derzeit in der Wartung. Bitte komm später wieder.",
|
||||||
|
"maintenance.messageIntro": "Zusätzlich hat der Administrator diese Nachricht hinterlassen:"
|
||||||
}
|
}
|
||||||
@@ -4,5 +4,6 @@
|
|||||||
"week": "Woche",
|
"week": "Woche",
|
||||||
"month": "Monat",
|
"month": "Monat",
|
||||||
"year": "Jahr",
|
"year": "Jahr",
|
||||||
|
"alltime": "Gesamter Zeitraum",
|
||||||
"no_recent_topics": "Es gibt keine aktuellen Themen."
|
"no_recent_topics": "Es gibt keine aktuellen Themen."
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
{
|
{
|
||||||
"results_matching": "%1 Ergebniss(e) stimmen mit \"%2\" überein, (%3 Sekunden)"
|
"results_matching": "%1 Ergebniss(e) stimmen mit \"%2\" überein, (%3 Sekunden)",
|
||||||
|
"no-matches": "Keine Beiträge gefunden"
|
||||||
}
|
}
|
||||||
@@ -2,5 +2,6 @@
|
|||||||
"no_tag_topics": "Es gibt keine Themen mit diesem Tag.",
|
"no_tag_topics": "Es gibt keine Themen mit diesem Tag.",
|
||||||
"tags": "Tags",
|
"tags": "Tags",
|
||||||
"enter_tags_here": "Gib hier Tags ein und drück die Eingabetaste nach jedem Tag.",
|
"enter_tags_here": "Gib hier Tags ein und drück die Eingabetaste nach jedem Tag.",
|
||||||
|
"enter_tags_here_short": "Gib Tags ein...",
|
||||||
"no_tags": "Es gibt bisher keine Tags."
|
"no_tags": "Es gibt bisher keine Tags."
|
||||||
}
|
}
|
||||||
@@ -18,7 +18,6 @@
|
|||||||
"restore": "Wiederherstellen",
|
"restore": "Wiederherstellen",
|
||||||
"move": "verschieben",
|
"move": "verschieben",
|
||||||
"fork": "Aufspalten",
|
"fork": "Aufspalten",
|
||||||
"banned": "gesperrt",
|
|
||||||
"link": "Link",
|
"link": "Link",
|
||||||
"share": "Teilen",
|
"share": "Teilen",
|
||||||
"tools": "Tools",
|
"tools": "Tools",
|
||||||
@@ -34,9 +33,11 @@
|
|||||||
"login_to_subscribe": "Bitte registrieren oder einloggen um dieses Thema zu abonnieren",
|
"login_to_subscribe": "Bitte registrieren oder einloggen um dieses Thema zu abonnieren",
|
||||||
"markAsUnreadForAll.success": "Thema für Alle als ungelesen markiert.",
|
"markAsUnreadForAll.success": "Thema für Alle als ungelesen markiert.",
|
||||||
"watch": "Beobachten",
|
"watch": "Beobachten",
|
||||||
|
"unwatch": "Nicht mehr beobachten",
|
||||||
"watch.title": "Bei neuen Antworten benachrichtigen",
|
"watch.title": "Bei neuen Antworten benachrichtigen",
|
||||||
|
"unwatch.title": "Dieses Thema nicht mehr beobachten",
|
||||||
"share_this_post": "Diesen Beitrag teilen",
|
"share_this_post": "Diesen Beitrag teilen",
|
||||||
"thread_tools.title": "Tools",
|
"thread_tools.title": "Themen-Tools",
|
||||||
"thread_tools.markAsUnreadForAll": "Als ungelesen markieren",
|
"thread_tools.markAsUnreadForAll": "Als ungelesen markieren",
|
||||||
"thread_tools.pin": "Thema anpinnen",
|
"thread_tools.pin": "Thema anpinnen",
|
||||||
"thread_tools.unpin": "Thema nicht mehr anpinnen",
|
"thread_tools.unpin": "Thema nicht mehr anpinnen",
|
||||||
@@ -46,11 +47,11 @@
|
|||||||
"thread_tools.move_all": "Alle verschieben",
|
"thread_tools.move_all": "Alle verschieben",
|
||||||
"thread_tools.fork": "Thema aufspalten",
|
"thread_tools.fork": "Thema aufspalten",
|
||||||
"thread_tools.delete": "Thema löschen",
|
"thread_tools.delete": "Thema löschen",
|
||||||
"thread_tools.delete_confirm": "Sind Sie sicher, dass Sie dieses Thema löschen möchten?",
|
"thread_tools.delete_confirm": "Bist du sicher, dass du dieses Thema löschen möchtest?",
|
||||||
"thread_tools.restore": "Thema wiederherstellen",
|
"thread_tools.restore": "Thema wiederherstellen",
|
||||||
"thread_tools.restore_confirm": "Sind Sie sicher, dass Sie dieses Thema wiederherstellen möchten?",
|
"thread_tools.restore_confirm": "Bist du sicher, dass du dieses Thema wiederherstellen möchtest?",
|
||||||
"thread_tools.purge": "Thema bereinigen",
|
"thread_tools.purge": "Thema bereinigen",
|
||||||
"thread_tools.purge_confirm": "Sind Sie sicher, dass Sie dieses Thema bereinigen möchten?",
|
"thread_tools.purge_confirm": "Bist du sicher, dass du dieses Thema bereinigen möchtest?",
|
||||||
"topic_move_success": "Thema wurde erfolgreich zu %1 verschoben.",
|
"topic_move_success": "Thema wurde erfolgreich zu %1 verschoben.",
|
||||||
"post_delete_confirm": "Sind Sie sicher, dass Sie diesen Beitrag löschen möchten?",
|
"post_delete_confirm": "Sind Sie sicher, dass Sie diesen Beitrag löschen möchten?",
|
||||||
"post_restore_confirm": "Sind Sie sicher, dass Sie diesen Beitrag wiederherstellen möchten?",
|
"post_restore_confirm": "Sind Sie sicher, dass Sie diesen Beitrag wiederherstellen möchten?",
|
||||||
@@ -71,7 +72,7 @@
|
|||||||
"topic_will_be_moved_to": "Dieses Thema wird verschoben nach",
|
"topic_will_be_moved_to": "Dieses Thema wird verschoben nach",
|
||||||
"fork_topic_instruction": "Klicke auf die Beiträge, die du aufspalten willst",
|
"fork_topic_instruction": "Klicke auf die Beiträge, die du aufspalten willst",
|
||||||
"fork_no_pids": "Keine Beiträge ausgewählt!",
|
"fork_no_pids": "Keine Beiträge ausgewählt!",
|
||||||
"fork_success": "Thema erfolgreich aufgespalten!",
|
"fork_success": "Thema erfolgreich abgespalten! Klicke hier, um zum abgespalteten Thema zu gelangen.",
|
||||||
"composer.title_placeholder": "Hier den Titel des Themas eingeben...",
|
"composer.title_placeholder": "Hier den Titel des Themas eingeben...",
|
||||||
"composer.discard": "Verwerfen",
|
"composer.discard": "Verwerfen",
|
||||||
"composer.submit": "Absenden",
|
"composer.submit": "Absenden",
|
||||||
@@ -87,7 +88,7 @@
|
|||||||
"more_users_and_guests": "%1 weitere(r) Nutzer und %2 Gäste",
|
"more_users_and_guests": "%1 weitere(r) Nutzer und %2 Gäste",
|
||||||
"more_users": "%1 weitere(r) Nutzer",
|
"more_users": "%1 weitere(r) Nutzer",
|
||||||
"more_guests": "%1 weitere Gäste",
|
"more_guests": "%1 weitere Gäste",
|
||||||
"users_and_others": "%1 and %2 others",
|
"users_and_others": "%1 und %2 andere",
|
||||||
"sort_by": "Sortieren nach",
|
"sort_by": "Sortieren nach",
|
||||||
"oldest_to_newest": "Älteste zuerst",
|
"oldest_to_newest": "Älteste zuerst",
|
||||||
"newest_to_oldest": "Neuster zuerst",
|
"newest_to_oldest": "Neuster zuerst",
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
"username": "Nutzername",
|
"username": "Nutzername",
|
||||||
"email": "E-Mail",
|
"email": "E-Mail",
|
||||||
"confirm_email": "E-Mail bestätigen",
|
"confirm_email": "E-Mail bestätigen",
|
||||||
|
"delete_account": "Konto löschen",
|
||||||
|
"delete_account_confirm": "Bist du sicher, dass du dein Konto löschen möchtest? <br /><strong>Diese Aktion kann nicht rückgängig gemacht werden und du kannst deine Daten nicht wiederherstellen</strong><br /><br />Gebe deinen Benutzernamen ein, um zu bestätigen, dass du dieses Konto löschen möchtest.",
|
||||||
"fullname": "Kompletter Name",
|
"fullname": "Kompletter Name",
|
||||||
"website": "Homepage",
|
"website": "Homepage",
|
||||||
"location": "Wohnort",
|
"location": "Wohnort",
|
||||||
@@ -27,6 +29,7 @@
|
|||||||
"edit": "Ändern",
|
"edit": "Ändern",
|
||||||
"uploaded_picture": "Hochgeladene Bilder",
|
"uploaded_picture": "Hochgeladene Bilder",
|
||||||
"upload_new_picture": "Neues Bild hochladen",
|
"upload_new_picture": "Neues Bild hochladen",
|
||||||
|
"upload_new_picture_from_url": "Neues Bild von URL hochladen",
|
||||||
"current_password": "Aktuelles Passwort",
|
"current_password": "Aktuelles Passwort",
|
||||||
"change_password": "Passwort ändern",
|
"change_password": "Passwort ändern",
|
||||||
"change_password_error": "Ungültiges Passwort!",
|
"change_password_error": "Ungültiges Passwort!",
|
||||||
@@ -44,12 +47,15 @@
|
|||||||
"max": "max.",
|
"max": "max.",
|
||||||
"settings": "Einstellungen",
|
"settings": "Einstellungen",
|
||||||
"show_email": "Zeige meine E-Mail Adresse an.",
|
"show_email": "Zeige meine E-Mail Adresse an.",
|
||||||
|
"show_fullname": "Zeige meinen kompletten Namen an",
|
||||||
|
"restrict_chats": "Nur Chatnachrichten von Benutzern, denen ich folge, erlauben",
|
||||||
"digest_label": "Auszug abonnieren",
|
"digest_label": "Auszug abonnieren",
|
||||||
"digest_description": "Abonniere E-Mail-Benachrichtigungen für dieses Forum (neue Benachrichtigungen und Themen) nach einem festen Zeitplan.",
|
"digest_description": "Abonniere E-Mail-Benachrichtigungen für dieses Forum (neue Benachrichtigungen und Themen) nach einem festen Zeitplan.",
|
||||||
"digest_off": "Aus",
|
"digest_off": "Aus",
|
||||||
"digest_daily": "Täglich",
|
"digest_daily": "Täglich",
|
||||||
"digest_weekly": "Wöchentlich",
|
"digest_weekly": "Wöchentlich",
|
||||||
"digest_monthly": "Monatlich",
|
"digest_monthly": "Monatlich",
|
||||||
|
"send_chat_notifications": "Sende eine E-Mail, wenn eine neue Chat-Nachricht eingeht und ich nicht online bin",
|
||||||
"has_no_follower": "Dieser User hat noch keine Follower.",
|
"has_no_follower": "Dieser User hat noch keine Follower.",
|
||||||
"follows_no_one": "Dieser User folgt noch niemandem :(",
|
"follows_no_one": "Dieser User folgt noch niemandem :(",
|
||||||
"has_no_posts": "Dieser Nutzer hat noch nichts gepostet.",
|
"has_no_posts": "Dieser Nutzer hat noch nichts gepostet.",
|
||||||
@@ -61,5 +67,9 @@
|
|||||||
"posts_per_page": "Beiträge pro Seite",
|
"posts_per_page": "Beiträge pro Seite",
|
||||||
"notification_sounds": "Ton abspielen, wenn ich eine Benachrichtigung erhalte.",
|
"notification_sounds": "Ton abspielen, wenn ich eine Benachrichtigung erhalte.",
|
||||||
"browsing": "Browser Einstellungen",
|
"browsing": "Browser Einstellungen",
|
||||||
"open_links_in_new_tab": "Externe Links in neuem Tab öffnen?"
|
"open_links_in_new_tab": "Externe Links in neuem Tab öffnen?",
|
||||||
|
"enable_topic_searching": "Suchen innerhalb von Themen aktivieren",
|
||||||
|
"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": "Folge Themen, auf die du antwortest.",
|
||||||
|
"follow_topics_you_create": "Folge Themen, die du erstellst."
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,5 @@
|
|||||||
"search": "Suchen",
|
"search": "Suchen",
|
||||||
"enter_username": "Benutzer durchsuchen",
|
"enter_username": "Benutzer durchsuchen",
|
||||||
"load_more": "mehr laden",
|
"load_more": "mehr laden",
|
||||||
"user-not-found": "Benutzer nicht gefunden!",
|
|
||||||
"users-found-search-took": "%1 Benutzer gefunden! Die Suche dauerte %2 ms."
|
"users-found-search-took": "%1 Benutzer gefunden! Die Suche dauerte %2 ms."
|
||||||
}
|
}
|
||||||
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": "Αγνόηση"
|
||||||
|
}
|
||||||
23
public/language/el/email.json
Normal file
23
public/language/el/email.json
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"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": "Αυτή η ειδοποίηση για συνομιλία σου στάλθηκε λόγω των ρυθμίσεών σου. ",
|
||||||
|
"test.text1": "Αυτό είναι ένα δοκιμαστικό email για να επιβεβαιώσουμε ότι ο emailer έχει στηθεί σωστά για το NodeBB.",
|
||||||
|
"unsub.cta": "Κάνε κλικ εδώ για να αλλάξεις αυτές τις ρυθμίσεις",
|
||||||
|
"closing": "Ευχαριστούμε!"
|
||||||
|
}
|
||||||
67
public/language/el/error.json
Normal file
67
public/language/el/error.json
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"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.",
|
||||||
|
"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": "Άκυρος τύπος εικόνας",
|
||||||
|
"group-name-too-short": "Το όνομα της ομάδας είναι πολύ μικρό",
|
||||||
|
"group-already-exists": "Το όνομα της ομάδας υπάρχει ήδη",
|
||||||
|
"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": "Οι εικόνες θεμάτων είναι απενεργοποιημένες",
|
||||||
|
"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",
|
||||||
|
"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"
|
||||||
|
}
|
||||||
77
public/language/el/global.json
Normal file
77
public/language/el/global.json
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"home": "Κεντρική",
|
||||||
|
"search": "Αναζήτηση",
|
||||||
|
"buttons.close": "Κλείσιμο",
|
||||||
|
"403.title": "Δεν επιτρέπεται η πρόσβαση",
|
||||||
|
"403.message": "Φαίνεται πως βρέθηκες σε κάποια σελίδα στην οποία δεν έχεις πρόσβαση. Ίσως πρέπει να <a href='/login'>συνδεθείς</a>;",
|
||||||
|
"404.title": "Δεν βρέθηκε",
|
||||||
|
"404.message": "Φαίνεται πως βρέθηκες σε κάποια σελίδα στην οποία δεν έχεις πρόσβαση. Επιστροφή στην <a href='/'>κεντρική σελίδα</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.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",
|
||||||
|
"delete_all": "Delete All"
|
||||||
|
}
|
||||||
8
public/language/el/groups.json
Normal file
8
public/language/el/groups.json
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"groups": "Groups",
|
||||||
|
"view_group": "Προβολή Ομάδας",
|
||||||
|
"details.title": "Λεπτομέρειες Ομάδας",
|
||||||
|
"details.members": "Λίστα Μελών",
|
||||||
|
"details.has_no_posts": "Τα μέλη αυτής της ομάδας δεν έχουν δημοσιεύσει τίποτα.",
|
||||||
|
"details.latest_posts": "Τελευταίες δημοσιεύσεις."
|
||||||
|
}
|
||||||
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:"
|
||||||
|
}
|
||||||
9
public/language/el/recent.json
Normal file
9
public/language/el/recent.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"title": "Πρόσφατα",
|
||||||
|
"day": "Ημέρα",
|
||||||
|
"week": "Εβδομάδα",
|
||||||
|
"month": "Μήνας",
|
||||||
|
"year": "Έτος",
|
||||||
|
"alltime": "Όλο το Ιστορικό",
|
||||||
|
"no_recent_topics": "Δεν υπάρχουν πρόσφατα θέματα."
|
||||||
|
}
|
||||||
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": "Συμφωνώ με τους Όρους Χρήσης"
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user