Compare commits

...

340 Commits

Author SHA1 Message Date
barisusakli
cce076fc83 closes #2323 2014-10-30 14:30:10 -04:00
Julian Lam
0a73fade08 updated version for 0.5.3 2014-10-27 17:36:26 -04:00
barisusakli
3d5e72bbc8 fix null parents 2014-10-27 02:58:20 -04:00
barisusakli
9909f8ba79 more err checks 2014-10-27 01:49:57 -04:00
barisusakli
18462c4190 derp 2014-10-27 00:59:52 -04:00
barisusakli
698d113857 error checks in middleware/admin 2014-10-27 00:54:26 -04:00
barisusakli
eaf89dc316 use parseSignature 2014-10-26 22:02:44 -04:00
barisusakli
a4d671f8b8 fix popular pill selection 2014-10-26 21:44:09 -04:00
barisusakli
238fb0bd4b removed logout log 2014-10-26 21:02:51 -04:00
barisusakli
c74370bfb1 removed recent/day week month
it starts with most recent 20 topics now and goes back instead of
showing empty if there are no new replies in the past 24 hours
2014-10-26 20:26:56 -04:00
barisusakli
c4a39c8163 use processSortedSet instead of getting all users 2014-10-26 20:10:57 -04:00
barisusakli
782896997d post count fix for post move 2014-10-26 19:13:48 -04:00
barisusakli
56947b999e added timestamps to winston logs 2014-10-26 18:46:50 -04:00
barisusakli
d2cc4b8516 possibly fixes 2301 2014-10-26 18:02:40 -04:00
barisusakli
35e2e1462b closes #2295 2014-10-26 17:04:55 -04:00
barisusakli
63cf8d674d listen disconnect event, display unknow socket method name on dev 2014-10-26 14:30:13 -04:00
barisusakli
dfae2ea0d7 fix new topics showing up in all categories on post 2014-10-26 14:26:21 -04:00
barisusakli
699b74603b only for logged in users 2014-10-25 19:22:13 -04:00
barisusakli
4c90c9a759 closes #2291 2014-10-25 19:19:47 -04:00
barisusakli
ca9cc6b32f show latest plugin version for uninstalled plugins as well 2014-10-24 17:47:27 -04:00
barisusakli
081efd22e2 prevent crash if category is not found 2014-10-24 15:35:10 -04:00
barisusakli
a7bb5893e8 fix dupe event listeners on category
only happens if you navigate from category to category
2014-10-24 15:05:37 -04:00
Julian Lam
0a81898810 grammar fix 2014-10-24 00:16:27 -04:00
Julian Lam
a9c528eb23 added instructions for responsible disclosure, and use of git bisect for regression testing, closed #2280 2014-10-24 00:12:18 -04:00
Julian Lam
9215930cfc fixed #2292 2014-10-24 00:01:08 -04:00
barisusakli
6e62c48f41 call package manager
get latest version from versions object
2014-10-23 22:38:28 -04:00
barisusakli
89613d2346 closes #2287 2014-10-23 22:26:52 -04:00
barisusakli
a8760cd2bc only ban once for low rep
also only check on downvotes
2014-10-23 18:05:40 -04:00
barisusakli
c753edab1d fix duplicate event listeners
they were duplicated if you navigated from topic to topic
2014-10-23 16:32:16 -04:00
Julian Lam
ffdc4b5d24 fixed places where site_title was being referenced in config, instead of the correct "title" 2014-10-23 15:47:25 -04:00
Julian Lam
8112ca73c8 reloading on plugin activation click instead of restart 2014-10-23 15:21:44 -04:00
barisusakli
f295083a08 fix upload error messages 2014-10-23 15:01:36 -04:00
barisusakli
802c8b15e2 fix upgrade script to include main post, and fix post indices 2014-10-22 19:33:47 -04:00
barisusakli
9a21e9646f only use multipart on upload routes,
delete temp files if there is an error in admin,
admin/mods should see topic reply
2014-10-22 18:26:01 -04:00
Julian Lam
67770e568f removed some console logging 2014-10-22 17:59:21 -04:00
Julian Lam
b95710b2c9 french typo 2014-10-22 17:50:26 -04:00
Julian Lam
a9a32bff50 latest french translations 2014-10-22 17:46:08 -04:00
barisusakli
c5224d099e parseInt show title 2014-10-22 17:22:47 -04:00
barisusakli
fd00dddd62 admin/mods always gets the reply privs 2014-10-22 16:12:29 -04:00
Julian Lam
aac923fb03 fised #2272 2014-10-22 13:47:05 -04:00
Julian Lam
62d85b0e26 updated installation data to only create four categories by default, and altered colour to be less stark (heh, what does that mean anyway...). Also added an intro post 2014-10-22 13:26:34 -04:00
Julian Lam
8468a84047 latest fallbacks 2014-10-22 12:30:15 -04:00
Julian Lam
07a54b9510 latest translations 2014-10-22 11:54:36 -04:00
Julian Lam
afa86c03c4 fixing language for nb -- closed #2288 2014-10-22 11:30:50 -04:00
barisusakli
ec9bf48477 admins/mods can always read topics 2014-10-21 18:09:32 -04:00
Julian Lam
a28b4bb8b9 fixed maintenance mode assets not being loaded properly 2014-10-21 15:58:30 -04:00
Julian Lam
1a90de7dd6 added new --from-file flag that will load js/css from the precompiled file instead of recompiling it on startup 2014-10-21 15:36:13 -04:00
barisusakli
ebfb953069 responsive images in group page 2014-10-21 15:24:50 -04:00
barisusakli
dcf2691a12 fix indent 2014-10-21 14:42:18 -04:00
Barış Soner Uşaklı
591a8b6b12 Merge pull request #2270 from stevelacy/master
Add user.updateProfile - hook user profile updates
2014-10-21 14:40:45 -04:00
barisusakli
1b80e6dbb2 fix email update on mongo 2014-10-21 14:17:30 -04:00
barisusakli
55a5d56989 fixed view count for guests 2014-10-21 13:59:40 -04:00
barisusakli
3e4b6c97a0 closes #2286 2014-10-21 13:48:50 -04:00
barisusakli
b5fe2c7b91 closes #2255
if user is banned log them out on header render
2014-10-20 16:36:00 -04:00
barisusakli
b23373c265 parseInt maintenance mode 2014-10-20 16:14:31 -04:00
barisusakli
f15631c3e1 topic notification nid doesn't need post id 2014-10-19 18:41:54 -04:00
barisusakli
6dd035a5af prevent crash if topic graph is clicked while not loaded 2014-10-19 18:37:11 -04:00
barisusakli
7de9b998b5 fix typo in ajaxify, closes #2279 2014-10-19 17:11:05 -04:00
barisusakli
3f28dbb1be update ACP every 10 seconds 2014-10-19 16:47:52 -04:00
barisusakli
224218f519 fix missing callback 2014-10-19 16:39:36 -04:00
barisusakli
e9ec225d5b removed isConnected check 2014-10-19 16:13:10 -04:00
barisusakli
4db31be7e3 #2200 actually fix dupe colors, show 10 topics 2014-10-19 15:59:33 -04:00
barisusakli
304f5b1c76 removed duped and empty bodyLong 2014-10-18 17:02:37 -04:00
barisusakli
6802bf7ce9 closes #2284 2014-10-18 16:45:39 -04:00
Steve Lacy
2d238e61ac correct object 2014-10-17 23:15:13 -07:00
Julian Lam
c2fb1eaabf updated master to report 0.5.3-dev 2014-10-18 00:29:20 -04:00
barisusakli
b209fb563e #2218 2014-10-17 23:29:28 -04:00
barisusakli
794d6eb9ab closes #2200 2014-10-17 23:14:17 -04:00
barisusakli
94ffe5d170 closes #2276 2014-10-17 23:04:50 -04:00
barisusakli
02f74ca032 fix browsing users removal 2014-10-17 20:49:16 -04:00
psychobunny
1eb1eb6844 #2278 2014-10-17 19:38:49 -04:00
psychobunny
ded8de905d closes #2278 2014-10-17 19:37:13 -04:00
barisusakli
d2334fbb4a dont search empty string, get 20 tags instead of 10 2014-10-17 19:12:18 -04:00
barisusakli
93d4a7c1f1 fix notifications to actually get recent 2014-10-17 18:51:58 -04:00
barisusakli
6cb5f9c098 emit stats to registered users only 2014-10-17 18:46:17 -04:00
barisusakli
c5e1f8e0aa user onlineUsers instead of calculating from rooms 2014-10-17 18:40:20 -04:00
barisusakli
7bf655541c cleanup and optimize notifications 2014-10-17 18:31:20 -04:00
barisusakli
cfd7edbf34 added nid 2014-10-17 17:23:47 -04:00
barisusakli
24de757549 Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-17 17:20:48 -04:00
barisusakli
b5fb7691cd optimize getUnreadByField
only get the most recent 100 notifications
dont call UserNotifications.getNotifications which does alot more work,
call the db directly
2014-10-17 17:20:45 -04:00
Julian Lam
75aa3f1006 updating markdown minimum version to 0.7.x and up 2014-10-17 13:44:47 -04:00
psychobunny
8ef4ad6f14 Revert "reverting #2259 temporarily until we figure out why logs aren't showing up"
This reverts commit 59b3e6f78f.
2014-10-17 01:47:13 -04:00
psychobunny
59b3e6f78f reverting #2259 temporarily until we figure out why logs aren't showing up 2014-10-17 01:43:00 -04:00
barisusakli
3ba4d2aa2b get correct count only from one of the active users elements 2014-10-17 01:11:55 -04:00
barisusakli
fec84821b7 removed this wasn't the problem after all 2014-10-16 20:03:22 -04:00
barisusakli
762b2fff37 display user count in browsing 2014-10-16 18:04:04 -04:00
barisusakli
df590d01e6 set key as well
not sure if this fixes dupe keys
2014-10-16 02:02:16 -04:00
barisusakli
9e8be432b3 notification changes
-only send a notification when the person you follow creates a topic
-you still get a notification per post if you are following a topic
-changed notifications.push so that it sends the notifications over a
period of time, currently to 50 users per second
-optimized topics.notifyFollowers and
user.notifications.sendTopicNotification, they no longer query the
database for the topic and post data instead they get it as params
-you can no longer follow yourself :)
-changed mongo sortedSetRemove so that it doesn't use $in if there is
only a single value to remove
2014-10-15 21:55:31 -04:00
Steve Lacy
d01497dde3 Merge branch 'master' of https://github.com/stevelacy/NodeBB 2014-10-15 16:27:01 -07:00
Steve Lacy
3ff7719cd4 add hook: filter: user.updateProfile 2014-10-15 16:26:40 -07:00
barisusakli
eb546dfaab temp until package manager is in place 2014-10-15 16:26:50 -04:00
barisusakli
834c4f8ff0 log stack 2014-10-15 16:19:27 -04:00
barisusakli
80489c6564 log post purges 2014-10-15 15:57:37 -04:00
barisusakli
90224d2de3 removed unique for now 2014-10-15 15:25:51 -04:00
barisusakli
f2883c2c9f createIndex helper 2014-10-15 15:11:01 -04:00
barisusakli
1be6a253bf make _key value index unique 2014-10-15 15:07:30 -04:00
barisusakli
72a919e416 time based check 2014-10-15 14:49:11 -04:00
barisusakli
f318f2f815 move out update, should work even if post isnt in dom 2014-10-14 23:57:27 -04:00
barisusakli
b3e83d2f9a update post count on purge 2014-10-14 23:41:58 -04:00
barisusakli
8471fcbd79 fixed typo 2014-10-14 23:36:59 -04:00
barisusakli
4b1adba9ec removed || 1 2014-10-14 23:35:32 -04:00
barisusakli
ffbefda5f7 #2265 upgrade script 2014-10-14 23:35:11 -04:00
barisusakli
761f56aeb1 removed most of the db.sortedSetCards 2014-10-14 23:12:47 -04:00
barisusakli
09bd42b9f6 removed deleted 2014-10-14 22:52:41 -04:00
barisusakli
b1d48df6d8 dont modify counts on soft post delete 2014-10-14 22:51:48 -04:00
barisusakli
5de74914bd moved updateCounters to purge 2014-10-14 22:18:24 -04:00
barisusakli
b65c17c5bc parseInt score 2014-10-14 20:56:52 -04:00
barisusakli
29fcb6c366 fix images in manage/flags and fadeout 2014-10-14 17:03:14 -04:00
barisusakli
040d7b8424 limit unread to 100 tids 2014-10-14 14:27:45 -04:00
barisusakli
0eae679bcd crash fix if field is undefined 2014-10-14 13:52:47 -04:00
barisusakli
be287740f9 Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-14 13:29:26 -04:00
barisusakli
62503c16c6 mark category read only if unread 2014-10-14 13:29:23 -04:00
Julian Lam
b5481ceed2 property fixed #2087 2014-10-14 11:48:31 -04:00
Julian Lam
08d4d6b5bf changed indentation for continueLogin method in authentication.js 2014-10-14 11:48:31 -04:00
barisusakli
f463030e76 closes #2264 2014-10-14 03:00:24 -04:00
barisusakli
835c58d27d mark read after infinite scroll
dont mark read if already read
2014-10-14 02:39:20 -04:00
barisusakli
6ff00a935f dont reverse infinite load admin/events 2014-10-13 23:36:08 -04:00
barisusakli
2b0957b8c7 Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-13 22:25:40 -04:00
barisusakli
40fe40deac removed users:online set
using websockets.getConnectedClients directly
2014-10-13 22:25:34 -04:00
Julian Lam
62d0e08d6a stopped loader from crashing whenever NodeBB restarts 2014-10-13 19:46:42 -04:00
Barış Soner Uşaklı
129a438ebe Merge pull request #2256 from Spiritlebon/master
lint fix
2014-10-13 15:14:35 -04:00
barisusakli
fced152e41 read total from global object 2014-10-13 15:06:21 -04:00
barisusakli
be0d043b2b Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-13 14:20:11 -04:00
barisusakli
27833a3e91 min-width for user boxes in admin/manage 2014-10-13 14:20:08 -04:00
Julian Lam
97dba9ae39 fixed #2259 2014-10-13 13:03:17 -04:00
barisusakli
3c25204fdd removed clear log, doesnt work with logrotate-stream 2014-10-13 13:01:16 -04:00
barisusakli
e699c02b65 get less data 2014-10-12 23:46:58 -04:00
barisusakli
10ead05d4b another unused require 2014-10-12 18:04:16 -04:00
barisusakli
8cc1cc0f1b removed unused require 2014-10-12 18:02:28 -04:00
barisusakli
1eb95a71ae no need for $in 2014-10-12 17:40:59 -04:00
Spiritlebon
2b15de63c0 checked number before parseInt 2014-10-12 04:01:35 +02:00
Spiritlebon
35fc175ff6 Lint fix 2014-10-12 03:36:38 +02:00
psychobunny
2c95d8d82e fixed ajaxifying to advanced/logs 2014-10-11 16:30:07 -04:00
psychobunny
91e11e304f added link to forum homepage 2014-10-11 16:25:58 -04:00
barisusakli
feed33f6e2 closes #2100 2014-10-10 22:53:01 -04:00
barisusakli
035c32df66 dont need to pass value on upserts 2014-10-10 19:21:47 -04:00
psychobunny
b0ec0f52a4 cleanup 2014-10-10 16:56:44 -04:00
psychobunny
e6b8c0b32f fixed infinitescroll on flags & tags 2014-10-10 16:43:54 -04:00
psychobunny
7ee6f1d01c added cache buster to all scripts/css in acp 2014-10-10 16:41:03 -04:00
psychobunny
1226a2462a closes #2250 2014-10-10 16:40:05 -04:00
psychobunny
a24dde863b moved src/client/modules/admin/selectable to src/admin/modules/selectable #2250 2014-10-10 16:37:58 -04:00
psychobunny
4268d424a3 fixes require.js error in ACP 2014-10-10 16:34:30 -04:00
barisusakli
e052d8e5c1 log topic move 2014-10-10 15:44:02 -04:00
psychobunny
ffcb324d91 oh bootbox, I forgive you. (I lost hope in this actually being resolved upstream) 2014-10-10 03:17:50 -04:00
psychobunny
cad3f3017c moved iconSelect to admin/modules 2014-10-10 03:12:04 -04:00
barisusakli
e95c68e7d6 fix bookmark 2014-10-09 20:47:27 -04:00
barisusakli
29d90bc67d only use unique cids in isModerator 2014-10-09 19:53:10 -04:00
barisusakli
07a5aeaf15 closes #2251 2014-10-09 19:20:53 -04:00
psychobunny
e9c48f50f9 moved admin search into its own modules 2014-10-09 18:48:35 -04:00
psychobunny
dcd47f7ec5 removed admin/footer.js, moved code to admin.js instead 2014-10-09 18:42:42 -04:00
barisusakli
3819d11be2 #2110 2014-10-09 18:42:08 -04:00
psychobunny
4cbb7e9832 closes #2230
and I actually tested every single one. go me!
2014-10-09 18:26:59 -04:00
psychobunny
c787cd671b migrating tag editing #2230 2014-10-09 18:21:44 -04:00
psychobunny
2f150649ae migrating infinitescroll #2230 2014-10-09 18:19:50 -04:00
barisusakli
142ffc2920 fixed other post 2014-10-09 18:16:29 -04:00
psychobunny
b7bba928a4 migrating home page to new partials #2230 2014-10-09 18:13:24 -04:00
barisusakli
0d95089bfe send array of posts 2014-10-09 18:12:40 -04:00
barisusakli
4190b3c41c sort plugins alphabetically 2014-10-09 17:44:48 -04:00
barisusakli
97b9ba983c read both 2014-10-09 17:31:51 -04:00
psychobunny
00ff032060 migrating categories to new partial templating #2230 2014-10-09 17:25:54 -04:00
psychobunny
73220aaa3d didn't realize mousetrap was being used elsewhere in the code, added back to client again 2014-10-09 17:13:22 -04:00
psychobunny
2906ac9ecf removing the welcome to nodebb panel because...
Well we only originally put it there because we didn't have anything
useful to show on the homepage initially.  Now we have STATS
2014-10-09 17:08:43 -04:00
psychobunny
ce30379c25 fix panel layout on dashboard 2014-10-09 17:07:10 -04:00
barisusakli
4126fcfce4 i fail at this 2014-10-09 16:56:13 -04:00
barisusakli
1a04d8f07d removed duped banned, its in user:banned 2014-10-09 16:41:58 -04:00
barisusakli
5dbd4bcda9 fix status if it was never set before 2014-10-09 16:16:28 -04:00
barisusakli
5d79d2a75a closes #2191
added unique visitors analytics
only update it every hour
2014-10-09 15:06:20 -04:00
barisusakli
cb934acb5d #2111
need latest version from api
2014-10-09 13:50:25 -04:00
psychobunny
206b54c35d nitpicking en_GB 2014-10-09 03:21:58 -04:00
psychobunny
424efbeb06 Yo not enough rep mah homie. 2014-10-09 03:13:52 -04:00
psychobunny
124576f843 this is the canadian i8n, we have a duty to be extra polite. 2014-10-09 03:13:08 -04:00
psychobunny
5dcd610c1a grandma ma grammar
we should really run this stuff through a spellchecker before committing
2014-10-09 03:09:59 -04:00
psychobunny
3f876548ba linting
I also want to lint the rest of this file but I have no idea what will
explode and it's almost 1AM. Next time ;)
2014-10-09 00:44:16 -04:00
psychobunny
7a53205c76 linting and removed unnecessary comment 2014-10-09 00:42:30 -04:00
psychobunny
b17740f8d7 return error message if config is not ready 2014-10-09 00:38:43 -04:00
psychobunny
b42e57bfdd removing leveldb from our dbal
a) It isn't being maintained, especially not by me
b) I haven't seen anybody actually interested in this db software so
there's no real point in supporting it unless we have a few people who
are interested

If you ARE interested though - please contact me and we can figure
something out in future :)
2014-10-09 00:33:09 -04:00
psychobunny
daf967399f fixing my todos so that @barisusakli will sleep tonight. and linting. 2014-10-09 00:18:04 -04:00
psychobunny
d63f2ccd28 removed legacy version of ACP menu code 2014-10-09 00:11:28 -04:00
Julian Lam
c4a5af3b1b fixed issue where a missing config.json would end up suggesting 'undefined' as a base_url 2014-10-08 23:27:31 -04:00
barisusakli
e1c3bc9713 fix teasers 2014-10-08 19:28:36 -04:00
psychobunny
8abf2835a5 removed modules/admin and moved mousetrap + keybindings out of client #2245 2014-10-08 17:06:35 -04:00
psychobunny
339d2b0143 closes #2246 2014-10-08 16:53:22 -04:00
psychobunny
ffc07ff6d2 moved settings module deps into ACP #2245 2014-10-08 16:20:22 -04:00
psychobunny
d759a7d9dd moved semver out of client js files #2245 2014-10-08 16:15:43 -04:00
psychobunny
a2377d4682 removed unused asset 2014-10-08 16:11:56 -04:00
psychobunny
ed60deb3f5 fixed ACP from previous commit 2014-10-08 16:08:35 -04:00
psychobunny
0f759f9df4 ... not sure why that didn't all go through in one commit 2014-10-08 15:37:10 -04:00
psychobunny
b51c90dcb3 doing some reshuffling in public/src
public/src/admin and public/src/client; also some cleanup in
src/meta/js, no need to filter out admin files anymore
2014-10-08 15:36:47 -04:00
barisusakli
006322f386 much faster sitemap
no need to load all the data, when we only use slug and lastposttime
2014-10-08 15:26:18 -04:00
barisusakli
e1f67052d0 closes #2244 2014-10-08 15:06:40 -04:00
psychobunny
0d741f0031 commenting out the reconnection messages, it's annoying if you have 500 users online
not sure if we do need it though, so just leaving it there for now
2014-10-08 15:05:36 -04:00
psychobunny
f35a51e48d making the loading sequence less verbose
in particular, the js stuff all happened sequentially at the same time
so there was no need for multiple messages
2014-10-08 15:05:02 -04:00
psychobunny
6418948570 only need one "meta/css done" message 2014-10-08 14:52:52 -04:00
psychobunny
ae635a0083 minifier.css isn't used 2014-10-08 14:49:23 -04:00
psychobunny
2f53a3acc9 adding .gitignore public/uploads 2014-10-08 14:24:17 -04:00
psychobunny
3a069e028b refactored meta/js
yay I haz sourcemaps on windows now
2014-10-08 14:20:47 -04:00
barisusakli
61c73b7761 fix urls 2014-10-08 14:04:48 -04:00
barisusakli
4dcecbb310 gitignore and folders 2014-10-08 13:48:50 -04:00
barisusakli
1d1625f5c4 closes #2157 2014-10-08 13:46:36 -04:00
psychobunny
b1b25ada4d started removing ajaxify.loadTemplate #2230 2014-10-08 13:17:21 -04:00
psychobunny
2b5c3275f3 upping templates.js, please run npm install 2014-10-08 13:17:02 -04:00
psychobunny
396fecb94a removing an old comment 2014-10-08 12:32:17 -04:00
psychobunny
f149fb0191 linting, TIL that obj.$key is valid syntax 2014-10-08 12:22:39 -04:00
psychobunny
729ed6fbda all your semi-colons are belongs to me 2014-10-08 12:18:32 -04:00
psychobunny
f4b5090738 more linting 2014-10-08 12:11:06 -04:00
psychobunny
27496a08c4 fix emailer crash (line 35) 2014-10-08 12:08:35 -04:00
psychobunny
94ec07eb73 linting 2014-10-08 12:07:33 -04:00
psychobunny
fd95ac096d doing our US friends a favOUr 2014-10-08 03:03:43 -04:00
psychobunny
c2d21de9ac show my full name
wonder why we implemented this. lmao
2014-10-08 03:02:16 -04:00
psychobunny
61b8c7f673 moar typos 2014-10-08 03:01:34 -04:00
psychobunny
5376f07f6c @julianlam is an administator 2014-10-08 02:59:58 -04:00
psychobunny
85e0d1c03f more user-friendly error messages 2014-10-08 02:58:03 -04:00
psychobunny
01b8d1472e closes #2116 2014-10-08 02:40:27 -04:00
psychobunny
d632ba2242 fix post crash from 712bd3938f 2014-10-08 00:32:43 -04:00
psychobunny
4b295decf8 forgot to update meta.title.build in socket.io/meta.js 2014-10-08 00:28:16 -04:00
psychobunny
eb4baf62b5 closes #2235 2014-10-08 00:18:02 -04:00
psychobunny
298625225a use default 403 message for accounts 2014-10-08 00:06:43 -04:00
psychobunny
7bd49a96b2 #2235 2014-10-08 00:02:00 -04:00
psychobunny
3b511b59cb found a duplicate language string 2014-10-08 00:01:40 -04:00
psychobunny
1bdb80ce0a and so does 403 2014-10-07 23:55:56 -04:00
psychobunny
3c97829e85 404 now properly reads error messages 2014-10-07 23:55:13 -04:00
barisusakli
712bd3938f parse post in Topics.reply not in Posts.create
makes importer faster if md plugin is enabled
2014-10-07 20:36:48 -04:00
Julian Lam
e0fd24c087 adding contributing.md to root 2014-10-07 20:33:02 -04:00
Julian Lam
ea2fbcfcfc closed #2242 2014-10-07 19:49:29 -04:00
psychobunny
cf22fad6fd made the acp search a bit more cooler 2014-10-07 17:42:07 -04:00
psychobunny
8a978e46de #2241 2014-10-07 17:07:42 -04:00
psychobunny
7396c363d7 press / to highlight search input box 2014-10-07 17:01:57 -04:00
psychobunny
b2866abf5c another fix for express deprecations 2014-10-07 17:01:55 -04:00
barisusakli
f6f6ca7f76 closes #2132 2014-10-07 16:21:16 -04:00
psychobunny
c57dc25ea7 closes #2241 2014-10-07 15:46:15 -04:00
barisusakli
0912c7a2aa closes #2240 2014-10-07 13:55:40 -04:00
barisusakli
ad4fff649c closes #2234 2014-10-07 13:08:28 -04:00
barisusakli
26cfe4a3c3 fix ban upgrade closes #2239 2014-10-07 12:34:41 -04:00
Julian Lam
0772e8c41f fixed #2236 - using !gte instead of lte 2014-10-07 02:12:22 -04:00
Julian Lam
b481a28b6e sendFile instead of sendfile 2014-10-07 01:54:16 -04:00
barisusakli
394a01fdef closes #2188 2014-10-06 18:19:37 -04:00
psychobunny
c827485de5 more user-friendly message for installing/uninstalling plugins 2014-10-06 18:01:45 -04:00
psychobunny
d7c796fba5 closes #2228 2014-10-06 18:00:42 -04:00
psychobunny
53fdef1d17 fixing deprecation notice for morgan 2014-10-06 17:40:56 -04:00
psychobunny
345896e8eb remove intervals if navigating to a different page in ACP 2014-10-06 17:25:55 -04:00
barisusakli
85da5fb054 closes #2189 2014-10-06 16:48:32 -04:00
barisusakli
6ca06a8e54 closes #2233 2014-10-06 16:16:31 -04:00
barisusakli
348911fd2d closes #2195 2014-10-06 16:03:59 -04:00
barisusakli
bc1281a201 update deps
dbsearch, string, underscore, validator
2014-10-06 14:00:10 -04:00
barisusakli
e35dd60f8f closes #1940 2014-10-06 13:43:41 -04:00
barisusakli
ccf58ed40e closes #2213 2014-10-06 13:11:12 -04:00
barisusakli
258e14e20c closes #2225 2014-10-06 12:41:56 -04:00
psychobunny
2a2490541f some minor linting elsewhere 2014-10-04 18:56:33 -04:00
psychobunny
31b2faf2c5 oops, this one was my bad 2014-10-04 18:54:23 -04:00
psychobunny
84b9b86dd1 no better way to spend your saturday
inb4 linting bonanza
2014-10-04 18:52:39 -04:00
psychobunny
d70aab6a1e more linting 2014-10-04 18:51:18 -04:00
psychobunny
89e4a67e95 linting 2014-10-04 18:50:03 -04:00
psychobunny
1b2ccda40b closes #2231; see #2218 2014-10-04 18:47:56 -04:00
psychobunny
bf852d8329 closes #2078 2014-10-04 18:30:21 -04:00
psychobunny
c14b5e3d3a updating templates.js to 0.1.0 2014-10-04 18:25:50 -04:00
psychobunny
319defd1d2 moved meta:js.compiled event to after minfile is committed to disk, closes #2173 2014-10-04 16:19:45 -04:00
psychobunny
fa8613d09d moving meta:css.compiled further down, currently it gets emitted twice 2014-10-04 16:19:44 -04:00
psychobunny
872e28099f fixing previous commit properly 2014-10-04 16:19:43 -04:00
psychobunny
edf37f3e0c wow, logic fail
if you called the same event twice, it will reduce count anyways (so I
could have event.any(a,b,c) and call a three times and it would
complete.
2014-10-04 16:19:41 -04:00
barisusakli
27c214486b closes #2226 2014-10-04 16:13:37 -04:00
psychobunny
5681d51778 pressing enter in acp search will search for the first match 2014-10-04 16:04:50 -04:00
psychobunny
39de76fa5c rearranging manage/users routes 2014-10-04 15:52:20 -04:00
psychobunny
901ef3d382 fix false positives from showing up in search 2014-10-04 15:48:20 -04:00
psychobunny
39e59ee918 fixed link to plugins page on widgets 2014-10-04 15:40:57 -04:00
psychobunny
ced0087347 hide the plugins and authentication tabs if no plugins detected 2014-10-04 15:38:48 -04:00
psychobunny
307a04c162 closes #2227 2014-10-04 15:35:31 -04:00
psychobunny
ba4392cda0 selectable - shift clicking deselects items in a group 2014-10-04 01:45:46 -04:00
barisusakli
cf5ac4fb74 filter before getting topics 2014-10-03 21:37:43 -04:00
barisusakli
31a1f85a7e removed year from popular 2014-10-03 20:39:10 -04:00
Julian Lam
3accfaebc9 fixing dashboard ACP js to show a more informative message for people running master branch 2014-10-03 20:22:50 -04:00
Julian Lam
03f926c560 updating some deps #2218 2014-10-03 20:22:50 -04:00
barisusakli
bc016321ac closes #2226 2014-10-03 19:34:05 -04:00
psychobunny
ba9da2b256 fixed selectable init for search 2014-10-03 19:00:07 -04:00
psychobunny
a4f7ad3161 admin/manage/users styling 2014-10-03 18:57:33 -04:00
psychobunny
eb5630caa7 refactored selectable to use 'selected' instead of 'dropped'; fixed position relative bug 2014-10-03 18:43:20 -04:00
psychobunny
44b39bc69d forgot tpl in previous commit 2014-10-03 18:43:18 -04:00
psychobunny
04b7dfeb02 updated manage/users to use new drag and drop selector 2014-10-03 18:43:17 -04:00
psychobunny
a6481aefe3 cleanup 2014-10-03 18:43:16 -04:00
psychobunny
7a2ccf6031 hardcoded parentElement by accident
so that's why it doesn't work on other pages. derp
2014-10-03 18:43:15 -04:00
psychobunny
a474f111a3 cleanup 2014-10-03 18:43:14 -04:00
psychobunny
9c67d5742e added event callbacks for onSelected and onUnselected 2014-10-03 18:43:12 -04:00
Julian Lam
cea23454c6 fixed #2220 2014-10-03 18:42:51 -04:00
psychobunny
13c9da6bff selectable - click/shiftclick to select as well 2014-10-03 18:01:50 -04:00
psychobunny
a23b0baf25 closes #2221 2014-10-03 17:58:44 -04:00
psychobunny
bcdb87f488 fixed selectable 2014-10-03 17:56:07 -04:00
psychobunny
06db3c1c3d fixed tag selectability after search 2014-10-03 17:56:05 -04:00
psychobunny
16a4824017 fixed tag searching 2014-10-03 17:56:04 -04:00
psychobunny
e86697b36f closes #2223, ability to select multiple tags 2014-10-03 17:56:03 -04:00
Julian Lam
4b9e4a0109 closed #2224 2014-10-03 17:29:51 -04:00
psychobunny
1644c1f9e9 Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-03 17:26:19 -04:00
psychobunny
e211628419 moved module less files out of components and into a separate folder 2014-10-03 17:26:15 -04:00
psychobunny
2db93c9219 created selectable module for selecting / grouping elements 2014-10-03 17:24:27 -04:00
psychobunny
2148e24969 added jquery drag and drop event libs 2014-10-03 16:55:00 -04:00
Julian Lam
60c45d8b9b fixed issue where non-admins would get maintenance mode header if maintenance mode was NOT enabled (logic errors, grrr..) 2014-10-03 16:39:27 -04:00
barisusakli
5db24fbe68 closes #2175 2014-10-03 16:31:53 -04:00
barisusakli
c37cfe4b3f closes #2209 2014-10-03 15:28:51 -04:00
Julian Lam
f5f84d9946 fixing upgrade text to use nodebb executable, removed exposure of option to run without upgrading 2014-10-03 15:28:02 -04:00
barisusakli
740c336480 typo 2014-10-03 15:16:04 -04:00
barisusakli
dba20160ce check length 2014-10-03 15:15:38 -04:00
Julian Lam
1b3b13716a 0.5.2-dev in ACP, just so people know it's not a released version 2014-10-03 15:13:12 -04:00
Julian Lam
19c69980ef Revert "bumping to 0.5.2 for dev purposes"
This reverts commit e6824fd727.
2014-10-03 15:12:58 -04:00
barisusakli
33780e6fdb closes #2133 2014-10-03 14:14:41 -04:00
barisusakli
73d358edc5 faster getTeasers
got rid of getPostIndices
2014-10-03 13:43:51 -04:00
barisusakli
43806e5921 replay ie host fix
https://github.com/NodeBB/NodeBB/pull/2216
2014-10-03 11:48:47 -04:00
barisusakli
0e3c5195db closes #2219 2014-10-03 11:34:12 -04:00
Julian Lam
b7ba6a0d8f fixed #2214 - each individual thread will create its own logrotate write handler, because if one is closed, everything crashes in a cascade effect because we're calling .write() after .end(), bleh. 2014-10-03 01:09:35 -04:00
Julian Lam
ee289c3226 latest translations and fallbacks 2014-10-02 23:51:51 -04:00
psychobunny
b4fb2d62a3 closes #2201 2014-10-02 20:47:59 -04:00
barisusakli
6a996bd718 closes #2210 2014-10-02 20:21:43 -04:00
barisusakli
8737c5a56d removed debug 2014-10-02 19:15:52 -04:00
barisusakli
eab180f305 crash fix 2014-10-02 19:03:03 -04:00
barisusakli
c72c876b04 check value 2014-10-02 18:57:21 -04:00
Julian Lam
4c70a0da4f removing postgres file from databases/ 2014-10-02 18:54:20 -04:00
barisusakli
c12b159bb5 temp debug 2014-10-02 18:51:08 -04:00
psychobunny
806b115782 don't attempt to update graphs if we're not connected 2014-10-02 18:33:08 -04:00
psychobunny
6a6f0a3b78 app.isConnected check 2014-10-02 18:32:36 -04:00
psychobunny
e20747c191 closes #2202 2014-10-02 18:30:51 -04:00
psychobunny
9c8395808c use page visibility api instead of window.onblur
this lib supports most major browsers
2014-10-02 18:29:47 -04:00
Julian Lam
24ac7ba316 better templating and styling for #2099 2014-10-02 18:26:43 -04:00
barisusakli
6f40a731f5 trigger posts loaded so masonry kicks in 2014-10-02 18:18:55 -04:00
barisusakli
2af077544b make sure postcount isnt NaN 2014-10-02 18:10:10 -04:00
barisusakli
32d0e0d7e5 dont update category post coint if topic post count is invalid 2014-10-02 18:06:19 -04:00
psychobunny
974a091f1b Merge branch 'master' of https://github.com/NodeBB/NodeBB 2014-10-02 17:55:33 -04:00
psychobunny
7243aebee0 fixed supervisor to ignore committed minified file 2014-10-02 17:55:30 -04:00
barisusakli
6aa53b8323 nextStart changes, fixed move topic notification text 2014-10-02 17:46:43 -04:00
Julian Lam
5ba88b7152 fixed #2208 2014-10-02 17:08:49 -04:00
psychobunny
e5681097f4 added error to minification step 2014-10-02 17:02:14 -04:00
psychobunny
bc4969be5b disable chart tooltips if mobile 2014-10-02 16:40:46 -04:00
psychobunny
9d53de5f70 oops 2014-10-02 16:00:17 -04:00
psychobunny
42d3656ecc fixing 2014-10-02 15:59:05 -04:00
Julian Lam
85048a5f75 closed #2203 2014-10-02 15:58:13 -04:00
Julian Lam
1eb9016a77 fixed #2207 2014-10-02 14:38:52 -04:00
barisusakli
043a73b4ae changed none to hidden 2014-10-02 14:30:54 -04:00
barisusakli
de98df842d priv fix 2014-10-02 13:55:01 -04:00
psychobunny
a67c501eb8 temporary solution for #2206 2014-10-02 13:38:42 -04:00
barisusakli
7b8656ef8b facebook share doesn't display & 2014-10-01 19:00:26 -04:00
barisusakli
b8df95da98 check message 2014-10-01 16:58:04 -04:00
Barış Soner Uşaklı
6165db3e00 Merge pull request #2198 from Schamper/fix/settings-message
Fix settings save message
2014-10-01 16:42:40 -04:00
Schamper
883422760d Fix settings save message 2014-10-01 22:30:22 +02:00
barisusakli
cf252a29a7 closes #2196 2014-10-01 15:32:54 -04:00
558 changed files with 5871 additions and 4528 deletions

4
.gitignore vendored
View File

@@ -27,8 +27,10 @@ pidfile
/public/templates
/public/sounds
/public/uploads
# compiled files
/public/stylesheet.css
/public/admin.css
/public/nodebb.min.js
/public/nodebb.min.js.map
/public/nodebb.min.js.map

41
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,41 @@
# 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)

81
app.js
View File

@@ -37,7 +37,8 @@ global.env = process.env.NODE_ENV || 'production';
winston.remove(winston.transports.Console);
winston.add(winston.transports.Console, {
colorize: true
colorize: true,
timestamp: true
});
winston.add(winston.transports.File, {
@@ -58,11 +59,13 @@ if(os.platform() === 'linux') {
});
}
// Log GNU copyright info along with server info
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
winston.info('');
if (!cluster.isWorker) {
// If run using `node app`, log GNU copyright info along with server info
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013-2014 NodeBB Inc.');
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
winston.info('');
}
// Alternate configuration file support
var configFile = path.join(__dirname, '/config.json'),
@@ -73,7 +76,7 @@ if (nconf.get('config')) {
}
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();
} else if (nconf.get('setup') || nconf.get('install') || !configExists) {
setup();
@@ -81,8 +84,6 @@ if (!nconf.get('help') && !nconf.get('setup') && !nconf.get('install') && !nconf
upgrade();
} else if (nconf.get('reset')) {
reset();
} else {
displayHelp();
}
function loadConfig() {
@@ -104,20 +105,20 @@ function loadConfig() {
}
function start() {
loadConfig();
winston.info('Time: ' + new Date());
winston.info('Initializing NodeBB v' + pkg.version);
winston.info('* using configuration stored in: ' + configFile);
var host = nconf.get(nconf.get('database') + ':host'),
storeLocation = host ? 'at ' + host + (host.indexOf('/') === -1 ? ':' + nconf.get(nconf.get('database') + ':port') : '') : '';
if (!cluster.isWorker || process.env.cluster_setup === 'true') {
winston.info('Time: ' + new Date());
winston.info('Initializing NodeBB v' + pkg.version);
winston.info('* using configuration stored in: ' + configFile);
}
winston.info('* using ' + nconf.get('database') +' store ' + storeLocation);
winston.info('* using themes stored in: ' + nconf.get('themes_path'));
if (cluster.isWorker && process.env.cluster_setup === 'true') {
var host = nconf.get(nconf.get('database') + ':host'),
storeLocation = host ? 'at ' + host + (host.indexOf('/') === -1 ? ':' + nconf.get(nconf.get('database') + ':port') : '') : '';
if (process.env.NODE_ENV === 'development') {
winston.info('Base Configuration OK.');
winston.info('* using ' + nconf.get('database') +' store ' + storeLocation);
winston.info('* using themes stored in: ' + nconf.get('themes_path'));
}
require('./src/database').init(function(err) {
@@ -143,14 +144,10 @@ function start() {
plugins.ready(function() {
webserver.init(function() {
// If this callback is called, this means that loader.js is used
process.on('message', function(msg) {
if (msg === 'bind') {
webserver.listen();
}
});
process.send({
action: 'ready'
webserver.listen(function() {
process.send({
action: 'ready'
});
});
});
});
@@ -171,13 +168,13 @@ function start() {
case 'css-propagate':
meta.css.cache = message.cache;
meta.css.acpCache = message.acpCache;
winston.info('[cluster] Stylesheet propagated to worker ' + cluster.worker.id);
winston.info('[cluster] Stylesheets propagated to worker ' + cluster.worker.id);
break;
}
});
process.on('uncaughtException', function(err) {
winston.error(err.message);
winston.error(err.stack);
console.log(err.stack);
meta.js.killMinifier();
@@ -185,10 +182,12 @@ function start() {
});
} else {
winston.warn('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
winston.warn(' node app --upgrade');
winston.warn('To ignore this error (not recommended):');
winston.warn(' node app --no-check-schema');
process.exit();
winston.warn(' ./nodebb upgrade');
if (cluster.isWorker) {
cluster.worker.kill();
} else {
process.exit();
}
}
});
});
@@ -359,16 +358,4 @@ function restart() {
winston.error('[app] Could not restart server. Shutting down.');
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)');
}
}

View File

@@ -1,30 +1,29 @@
'use strict';
var bcrypt = require('bcryptjs'),
async = require('async'),
action = process.argv[2];
var bcrypt = require('bcryptjs');
switch(action) {
case 'compare':
bcrypt.compare(process.argv[3], process.argv[4], function(err, res) {
process.stdout.write(res ? 'true' : 'false');
});
break;
process.on('message', function(m) {
if (m.type === 'hash') {
hash(m.rounds, m.password);
} else if (m.type === 'compare') {
compare(m.password, m.hash);
}
});
function hash(rounds, password) {
bcrypt.genSalt(rounds, function(err, salt) {
if (err) {
return process.send({type:'hash', err: {message: err.message}});
}
bcrypt.hash(password, salt, function(err, hash) {
process.send({type:'hash', err: err ? {message: err.message} : null, hash: hash, password: password});
});
});
}
function compare(password, hash) {
bcrypt.compare(password, hash, function(err, res) {
process.send({type:'compare', err: err ? {message: err.message} : null, hash: hash, password: password, result: res});
});
case 'hash':
async.waterfall([
async.apply(bcrypt.genSalt, parseInt(process.argv[3], 10)),
function(salt, next) {
bcrypt.hash(process.argv[4], salt, next);
}
], function(err, hash) {
if (!err) {
process.stdout.write(hash);
} else {
process.stderr.write(err.message);
}
});
break;
}

View File

@@ -2,7 +2,7 @@
{
"name": "Announcements",
"description": "Announcements regarding our community",
"bgColor": "#0059B2",
"bgColor": "#fda34b",
"color": "#fff",
"icon" : "fa-bullhorn",
"order": 1
@@ -10,89 +10,25 @@
{
"name": "General Discussion",
"description": "A place to talk about whateeeever you want",
"bgColor": "#0059B2",
"bgColor": "#59b3d0",
"color": "#fff",
"icon" : "fa-comment",
"icon" : "fa-comments-o",
"order": 2
},
{
"name": "NodeBB Development",
"description": "NodeBB development news and announcements",
"bgColor": "#0059B2",
"color": "#fff",
"icon" : "fa-github",
"order": 3
},
{
"name": "Blogs",
"description": "Blog posts from individual members",
"bgColor": "#0059B2",
"bgColor": "#86ba4b",
"color": "#fff",
"icon" : "fa-pencil",
"icon" : "fa-newspaper-o",
"order": 4
},
{
"name": "Feature Requests",
"description": "Got a feature request you'd like to see? Give us a shout here.",
"bgColor": "#ab1290",
"name": "Comments & Feedback",
"description": "Got a question? Ask away!",
"bgColor": "#e95c5a",
"color": "#fff",
"icon" : "fa-lightbulb-o",
"order": 5
},
{
"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
"icon" : "fa-question",
"order": 3
}
]

View File

@@ -12,7 +12,7 @@ function success(err, config, callback) {
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) {
if (!databaseConfig) {
@@ -39,15 +39,11 @@ function success(err, config, callback) {
password: databaseConfig['mongo:password'],
database: databaseConfig['mongo:database']
};
} else if (database === 'level') {
config.level = {
database: databaseConfig['level:database']
};
} else {
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++) {
delete config[allQuestions[x].name];
}
@@ -67,12 +63,6 @@ function success(err, config, callback) {
} else {
prompt.get(questions.mongo, dbQuestionsSuccess);
}
} else if(database === 'level') {
if (config['level:database']) {
dbQuestionsSuccess(null, config);
} else {
prompt.get(questions.level, dbQuestionsSuccess);
}
} else {
return callback(new Error('unknown database : ' + database));
}

View File

@@ -6,10 +6,14 @@ var nconf = require('nconf'),
cluster = require('cluster'),
async = require('async'),
logrotate = require('logrotate-stream'),
pkg = require('./package.json'),
pidFilePath = __dirname + '/pidfile',
output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true }),
silent = process.env.NODE_ENV !== 'development' ? true : false,
numCPUs,
numProcs,
Loader = {
timesStarted: 0,
shutdown_queue: [],
@@ -23,11 +27,12 @@ var nconf = require('nconf'),
}
};
Loader.init = function() {
Loader.init = function(callback) {
cluster.setupMaster({
exec: "app.js",
silent: silent
});
Loader.primaryWorker = 1;
if (silent) {
console.log = function(value) {
@@ -35,9 +40,26 @@ Loader.init = function() {
};
}
process.on('SIGHUP', Loader.restart);
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.addClusterEvents = function(callback) {
cluster.on('fork', function(worker) {
worker.on('message', function(message) {
if (message && typeof message === 'object' && message.action) {
var otherWorkers;
switch (message.action) {
case 'ready':
if (Loader.js.cache) {
@@ -56,8 +78,6 @@ Loader.init = function() {
});
}
worker.send('bind');
// Kill an instance in the shutdown queue
var workerToKill = Loader.shutdown_queue.pop();
if (workerToKill) {
@@ -78,9 +98,10 @@ Loader.init = function() {
Loader.js.cache = message.cache;
Loader.js.map = message.map;
var otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
});
otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
});
otherWorkers.forEach(function(worker_id) {
cluster.workers[worker_id].send({
action: 'js-propagate',
@@ -93,9 +114,10 @@ Loader.init = function() {
Loader.css.cache = message.cache;
Loader.css.acpCache = message.acpCache;
var otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
});
otherWorkers = Object.keys(cluster.workers).filter(function(worker_id) {
return parseInt(worker_id, 10) !== parseInt(worker.id, 10);
});
otherWorkers.forEach(function(worker_id) {
cluster.workers[worker_id].send({
action: 'css-propagate',
@@ -112,7 +134,7 @@ Loader.init = function() {
case 'user:connect':
case 'user:disconnect':
case 'config:update':
notifyWorkers(message);
Loader.notifyWorkers(message);
break;
}
}
@@ -123,15 +145,9 @@ Loader.init = function() {
console.log('[cluster] Child Process (' + worker.process.pid + ') listening for connections.');
});
function notifyWorkers(msg) {
Object.keys(cluster.workers).forEach(function(id) {
cluster.workers[id].send(msg);
});
}
cluster.on('exit', function(worker, code, signal) {
if (code !== 0) {
if (Loader.timesStarted < numCPUs*3) {
if (Loader.timesStarted < numProcs*3) {
Loader.timesStarted++;
if (Loader.crashTimer) {
clearTimeout(Loader.crashTimer);
@@ -140,14 +156,14 @@ Loader.init = function() {
Loader.timesStarted = 0;
});
} else {
console.log(numCPUs*3 + ' restarts in 10 seconds, most likely an error on startup. Halting.');
console.log(numProcs*3 + ' restarts in 10 seconds, most likely an error on startup. Halting.');
process.exit();
}
}
console.log('[cluster] Child Process (' + worker.process.pid + ') has exited (code: ' + code + ')');
if (!worker.suicide) {
console.log('[cluster] Spinning up another process...')
console.log('[cluster] Spinning up another process...');
var wasPrimary = parseInt(worker.id, 10) === Loader.primaryWorker;
cluster.fork({
@@ -156,17 +172,20 @@ Loader.init = function() {
}
});
process.on('SIGHUP', Loader.restart);
cluster.on('disconnect', function(worker) {
console.log('[cluster] Child Process (' + worker.process.pid + ') has disconnected');
});
Loader.start();
};
callback();
}
Loader.start = function() {
var worker;
Loader.start = function(callback) {
var output = logrotate({ file: __dirname + '/logs/output.log', size: '1m', keep: 3, compress: true }),
worker;
Loader.primaryWorker = 1;
console.log('Clustering enabled: Spinning up ' + numProcs + ' process(es).\n');
for(var x=0;x<numCPUs;x++) {
for(var x=0;x<numProcs;x++) {
// Only the first worker sets up templates/sounds/jobs/etc
worker = cluster.fork({
cluster_setup: x === 0,
@@ -178,7 +197,9 @@ Loader.start = function() {
worker.process.stdout.pipe(output);
}
}
}
if (callback) callback();
};
Loader.restart = function(callback) {
// Slate existing workers for termination -- welcome to death row.
@@ -194,15 +215,19 @@ Loader.reload = function() {
});
};
Loader.notifyWorkers = function (msg) {
Object.keys(cluster.workers).forEach(function(id) {
cluster.workers[id].send(msg);
});
}
nconf.argv().file({
file: path.join(__dirname, '/config.json')
});
numCPUs = nconf.get('cluster') || 1;
numCPUs = (numCPUs === true) ? require('os').cpus().length : numCPUs;
numProcs = nconf.get('cluster') || 1;
numProcs = (numProcs === true) ? require('os').cpus().length : numProcs;
if (nconf.get('daemon') !== false) {
if (fs.existsSync(pidFilePath)) {
@@ -220,4 +245,13 @@ if (nconf.get('daemon') !== false) {
fs.writeFile(__dirname + '/pidfile', process.pid);
}
Loader.init();
async.series([
Loader.init,
Loader.displayStartupMessages,
Loader.addClusterEvents,
Loader.start
], function(err) {
if (err) {
console.log('[loader] Error during startup: ' + err.message);
}
});

View File

@@ -8,14 +8,16 @@ var uglifyjs = require('uglify-js'),
crypto = require('crypto'),
Minifier = {
js: {},
css: {}
js: {}
};
/* Javascript */
Minifier.js.minify = function (scripts, relativePath, minify, callback) {
var options = {
compress: false
compress: false,
sourceMapURL: '/nodebb.min.js.map',
outSourceMap: 'nodebb.min.js.map',
sourceRoot: relativePath
};
scripts = scripts.filter(function(file) {
@@ -23,9 +25,6 @@ Minifier.js.minify = function (scripts, relativePath, minify, callback) {
});
if (!minify) {
options.sourceMapURL = '/nodebb.min.js.map';
options.outSourceMap = 'nodebb.min.js.map';
options.sourceRoot = relativePath;
options.mangle = false;
options.prefix = 1;
}
@@ -59,16 +58,9 @@ process.on('message', function(payload) {
switch(payload.action) {
case 'js':
Minifier.js.minify(payload.scripts, payload.relativePath, payload.minify, function(data) {
process.stdout.write(data.js);
process.send({
type: 'end',
payload: 'script'
});
process.stderr.write(data.map);
process.send({
type: 'end',
payload: 'mapping'
data: data
});
});
break;

2
nodebb
View File

@@ -102,7 +102,7 @@ case "$1" in
echo "Launching NodeBB in \"development\" mode."
echo "To run the production build of NodeBB, please use \"forever\"."
echo "More Information: https://docs.nodebb.org/en/latest/running/index.html"
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 "$@"
;;
*)

View File

@@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPLv3 or later",
"description": "NodeBB Forum",
"version": "0.5.2",
"version": "0.5.3",
"homepage": "http://www.nodebb.org",
"repository": {
"type": "git",
@@ -17,50 +17,50 @@
"dependencies": {
"async": "~0.9.0",
"bcryptjs": "~2.0.1",
"body-parser": "^1.0.1",
"compression": "^1.0.1",
"body-parser": "^1.9.0",
"compression": "^1.1.0",
"connect-ensure-login": "^0.1.1",
"connect-flash": "^0.1.1",
"connect-multiparty": "^1.0.1",
"cookie-parser": "^1.0.1",
"cron": "~1.0.4",
"csurf": "^1.1.0",
"connect-multiparty": "^1.2.4",
"cookie-parser": "^1.3.3",
"cron": "^1.0.5",
"csurf": "^1.6.1",
"daemon": "~1.1.0",
"express": "4.6.1",
"express-session": "^1.0.2",
"express": "^4.9.5",
"express-session": "^1.8.2",
"gm": "1.16.0",
"gravatar": "1.0.6",
"less": "~1.7.3",
"gravatar": "^1.1.0",
"less": "^1.7.5",
"logrotate-stream": "^0.2.3",
"mkdirp": "~0.5.0",
"morgan": "^1.0.0",
"morgan": "^1.3.2",
"nconf": "~0.6.7",
"nodebb-plugin-dbsearch": "0.0.13",
"nodebb-plugin-markdown": "~0.6.3",
"nodebb-plugin-dbsearch": "0.0.15",
"nodebb-plugin-markdown": "^0.7.0",
"nodebb-plugin-mentions": "~0.6.0",
"nodebb-plugin-soundpack-default": "~0.1.1",
"nodebb-theme-lavender": "~0.1.0",
"nodebb-theme-vanilla": "~0.1.0",
"nodebb-widget-essentials": "~0.1.1",
"npm": "^1.4.6",
"passport": "~0.2.0",
"npm": "^2.1.4",
"passport": "^0.2.1",
"passport-local": "1.0.0",
"prompt": "~0.2.11",
"request": "~2.38.0",
"prompt": "^0.2.14",
"request": "^2.44.0",
"rimraf": "~2.2.6",
"rss": "~0.3.2",
"semver": "~2.3.1",
"serve-favicon": "^2.0.1",
"sitemap": "~0.7.3",
"socket.io": "0.9.17",
"socket.io-client": "0.9.17",
"rss": "^1.0.0",
"semver": "^4.0.3",
"serve-favicon": "^2.1.5",
"sitemap": "^0.7.4",
"socket.io": "^0.9.17",
"socket.io-client": "^0.9.17",
"socket.io-wildcard": "~0.1.1",
"string": "~1.9.0",
"templates.js": "0.0.14",
"string": "^2.1.0",
"templates.js": "0.1.2",
"uglify-js": "git+https://github.com/julianlam/UglifyJS2.git",
"underscore": "~1.6.0",
"validator": "~3.16.1",
"winston": "~0.7.2",
"underscore": "~1.7.0",
"validator": "~3.21.0",
"winston": "^0.8.0",
"xregexp": "~2.0.0"
},
"devDependencies": {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 861 B

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Invalid User Data",
"invalid-password": "كلمة السر غير مقبولة",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Invalid pagination value",
"username-taken": "اسم المستخدم ماخوذ",
"email-taken": "البريد الالكتروني ماخوذ",
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Username too short",
"username-too-long": "Username too long",
"user-banned": "المستخدم محظور",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "Category doesn't exist",
"no-topic": "Topic doesn't exist",
"no-post": "Post doesn't exist",
"no-group": "Group doesn't exist",
"no-user": "المستخدم لا يوجد",
"no-teaser": "Teaser doesn't exist",
"no-privileges": "You don't have enough privileges for this action.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Category disabled",
"topic-locked": "الموضوع مقفول",
"still-uploading": "الرجاء انتظار الرفع",
"content-too-short": "Please enter a longer post. At least %1 characters.",
"title-too-short": "Please enter a longer title. At least %1 characters.",
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
"too-many-posts": "You can only post every %1 seconds.",
"file-too-big": "Maximum allowed file size is %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "You cannot vote for your own post",
"already-favourited": "You already favourited this post",
"already-unfavourited": "You already unfavourited this post",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "You can't ban other admins!",
"invalid-image-type": "نوع الصورة ممنوع",
"group-name-too-short": "Group name too short",
"group-already-exists": "Group already exists",
"group-name-change-not-allowed": "Group name change not allowed",
"post-already-deleted": "Post already deleted",
"post-already-restored": "Post already restored",
"topic-already-deleted": "Topic already deleted",
"topic-already-restored": "Topic already restored",
"post-already-deleted": "This post has already been deleted",
"post-already-restored": "This post has already been restored",
"topic-already-deleted": "This topic has already been deleted",
"topic-already-restored": "This topic has already been restored",
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
"invalid-file": "Invalid File",
"uploads-are-disabled": "Uploads are disabled",
"upload-error": "مشكلة في الرفع: 1%",
"signature-too-long": "Signature can't be longer than %1 characters!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "You can't chat with yourself!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "Guest",
"guests": "Guests",
"updated.title": "Forum Updated",
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "You have unread notifications.",
"new_message_from": "New message from <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> has moved your post.",
"moved_your_topic": "<strong>%1<strong> has moved your topic.",
"moved_your_post": "<strong>%1</strong> has moved your post.",
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "Email Confirmed",

View File

@@ -12,5 +12,7 @@
"user.posts": "Posts made by %1",
"user.topics": "Topics created by %1",
"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:"
}

View File

@@ -2,5 +2,6 @@
"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."
}

View File

@@ -18,7 +18,6 @@
"restore": "Restore",
"move": "انقل",
"fork": "فرع",
"banned": "محظور",
"link": "رابط",
"share": "شارك",
"tools": "أدوات",
@@ -28,15 +27,17 @@
"flag_title": "Flag this post for moderation",
"flag_confirm": "Are you sure you want to flag this post?",
"flag_success": "This post has been flagged for moderation.",
"deleted_message": "This 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.",
"not_following_topic.message": "You will no longer receive notifications from this topic.",
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
"markAsUnreadForAll.success": "Topic marked as unread for all.",
"watch": "Watch",
"unwatch": "Unwatch",
"watch.title": "Be notified of new replies in this topic",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Share this Post",
"thread_tools.title": "أدوات الموضوع",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "علم غير مقروء",
"thread_tools.pin": "علق الموضوع",
"thread_tools.unpin": "Unpin Topic",
@@ -46,11 +47,11 @@
"thread_tools.move_all": "Move All",
"thread_tools.fork": "تفرع الموضوع",
"thread_tools.delete": "حذف الموضوع",
"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_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_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",
"post_delete_confirm": "Are you sure you want to delete this post?",
"post_restore_confirm": "Are you sure you want to restore this post?",
@@ -71,7 +72,7 @@
"topic_will_be_moved_to": "هذا الموضوع سوف ينقل إلى فئة",
"fork_topic_instruction": "إضغط على الردود لتفريعهم",
"fork_no_pids": "لم تختار أي رد",
"fork_success": "Succesfully forked topic! Click here to go to the forked topic.",
"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",

View File

@@ -29,6 +29,7 @@
"edit": "صحح",
"uploaded_picture": "صورة تم تحميلها",
"upload_new_picture": "تحميل صورة جديدة",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Current Password",
"change_password": "تغيير كلمة السر",
"change_password_error": "Invalid Password!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Settings",
"show_email": "أظهر بريدي الإلكتروني",
"show_fullname": "Show My Full Name",
"digest_label": "Subscribe to Digest",
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
"digest_off": "Off",

View File

@@ -5,6 +5,5 @@
"search": "بحث",
"enter_username": "أدخل اسم مستخدم للبحث",
"load_more": "حمل المزيد",
"user-not-found": "User not found!",
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Invalid User Data",
"invalid-password": "Invalid Password",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Invalid pagination value",
"username-taken": "Username taken",
"email-taken": "Email taken",
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Username too short",
"username-too-long": "Username too long",
"user-banned": "User banned",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "Category doesn't exist",
"no-topic": "Topic doesn't exist",
"no-post": "Post doesn't exist",
"no-group": "Group doesn't exist",
"no-user": "User doesn't exist",
"no-teaser": "Teaser doesn't exist",
"no-privileges": "You don't have enough privileges for this action.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Category disabled",
"topic-locked": "Topic Locked",
"still-uploading": "Please wait for uploads to complete.",
"content-too-short": "Please enter a longer post. At least %1 characters.",
"title-too-short": "Please enter a longer title. At least %1 characters.",
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
"too-many-posts": "You can only post every %1 seconds.",
"file-too-big": "Maximum allowed file size is %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "You cannot vote for your own post",
"already-favourited": "You already favourited this post",
"already-unfavourited": "You already unfavourited this post",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "You can't ban other admins!",
"invalid-image-type": "Invalid image type",
"group-name-too-short": "Group name too short",
"group-already-exists": "Group already exists",
"group-name-change-not-allowed": "Group name change not allowed",
"post-already-deleted": "Post already deleted",
"post-already-restored": "Post already restored",
"topic-already-deleted": "Topic already deleted",
"topic-already-restored": "Topic already restored",
"post-already-deleted": "This post has already been deleted",
"post-already-restored": "This post has already been restored",
"topic-already-deleted": "This topic has already been deleted",
"topic-already-restored": "This topic has already been restored",
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
"invalid-file": "Invalid File",
"uploads-are-disabled": "Uploads are disabled",
"upload-error": "Upload Error : %1",
"signature-too-long": "Signature can't be longer than %1 characters!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "You can't chat with yourself!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "Guest",
"guests": "Guests",
"updated.title": "Forum Updated",
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "You have unread notifications.",
"new_message_from": "New message from <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> has moved your post.",
"moved_your_topic": "<strong>%1<strong> has moved your topic.",
"moved_your_post": "<strong>%1</strong> has moved your post.",
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "Email Confirmed",

View File

@@ -12,5 +12,7 @@
"user.posts": "Posts made by %1",
"user.topics": "Topics created by %1",
"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:"
}

View File

@@ -2,5 +2,6 @@
"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."
}

View File

@@ -18,7 +18,6 @@
"restore": "Restore",
"move": "Přesunout",
"fork": "Rozdělit",
"banned": "banned",
"link": "Odkaz",
"share": "Sdílet",
"tools": "Nástroje",
@@ -28,15 +27,17 @@
"flag_title": "Flag this post for moderation",
"flag_confirm": "Are you sure you want to flag this post?",
"flag_success": "This post has been flagged for moderation.",
"deleted_message": "This 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.",
"not_following_topic.message": "You will no longer receive notifications from this topic.",
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
"markAsUnreadForAll.success": "Topic marked as unread for all.",
"watch": "Watch",
"unwatch": "Unwatch",
"watch.title": "Be notified of new replies in this topic",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Share this Post",
"thread_tools.title": "Nástroje",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "Označit jako nepřečtené",
"thread_tools.pin": "Pin Topic",
"thread_tools.unpin": "Unpin Topic",
@@ -46,11 +47,11 @@
"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 thread?",
"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 thread?",
"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 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",
"post_delete_confirm": "Are you sure you want to delete 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",
"fork_topic_instruction": "Vyber příspěvky, které chceš oddělit",
"fork_no_pids": "Žádné příspěvky nebyly vybrány!",
"fork_success": "Succesfully forked topic! Click here to go to the forked topic.",
"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",

View File

@@ -29,6 +29,7 @@
"edit": "Upravit",
"uploaded_picture": "Nahraný obrázek",
"upload_new_picture": "Nahrát nový obrázek",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Current Password",
"change_password": "Změnit heslo",
"change_password_error": "Invalid Password!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Nastavení",
"show_email": "Zobrazovat můj email v profilu",
"show_fullname": "Show My Full Name",
"digest_label": "Subscribe to Digest",
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
"digest_off": "Off",

View File

@@ -5,6 +5,5 @@
"search": "Vyhledávat",
"enter_username": "Zadej uživatelské jméno k hledání",
"load_more": "Načíst další",
"user-not-found": "User not found!",
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "Wir haben eine Anfrage auf Zurücksetzung deines Passworts erhalten, wahrscheinlich, weil du es vergessen hast. Falls dies nicht der Fall ist, ignoriere bitte diese E-Mail.",
"reset.text2": "Klicke bitte auf den folgenden Link, um mit der Zurücksetzung deines Passworts fortzufahren:",
"reset.cta": "Klicke hier, um dein Passwort zurückzusetzen",
"digest.notifications": "Du hast einige ungelesene Benachrichtigungen vom %1:",
"digest.notifications": "You have unread notifications from %1:",
"digest.latest_topics": "Aktuellste Themen vom %1",
"digest.cta": "Klicke hier, um %1 zu besuchen",
"digest.unsub.info": "Diese Zusammenfassung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Ungültige Benutzerdaten",
"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",
"username-taken": "Der Benutzername 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": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Benutzername ist zu kurz",
"username-too-long": "Der Benutzername ist zu lang",
"user-banned": "Der Benutzer ist gesperrt",
"user-too-new": "Du musst %1 Sekunden warten, bevor du deinen ersten Beitrag verfassen kannst!",
"no-category": "Die Kategorie existiert nicht",
"no-topic": "Das Thema existiert nicht",
"no-post": "Der Beitrag existiert nicht",
"no-group": "Die Gruppe existiert nicht",
"no-user": "Der Benutzer existiert nicht",
"no-teaser": "Kurztext existiert nicht",
"no-privileges": "Du verfügst nicht über ausreichende Berechtigungen, um die Aktion durchzuführen.",
"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": "Es wurde keine E-Mail-Plugins geladen, weshalb eine Test-E-Mail nicht gesendet werden konnte.",
"category-disabled": "Kategorie ist deaktiviert",
"topic-locked": "Thema ist gesperrt",
"still-uploading": "Bitte warte bis der Vorgang abgeschlossen ist.",
"content-too-short": "Der Beitrag muss mindestens %1 Zeichen enthalten.",
"title-too-short": "Der Titel muss mindestens %1 Zeichen enthalten.",
"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": "Der Titel darf maximal %1 Zeichen enthalten.",
"too-many-posts": "Du kannst maximal alle %1 Sekunden einen Beitrag erstellen.",
"file-too-big": "Die maximale Dateigröße beträgt %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "Du kannst deinen eigenen Beitrag nicht bewerten.",
"already-favourited": "Dieser Beitrag ist bereits in deinen Favoriten enthalten",
"already-unfavourited": "Du hast diesen Beitrag bereits aus deinen Favoriten entfernt",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "Du kannst andere Administratoren nicht sperren!",
"invalid-image-type": "Ungültiger Bildtyp",
"group-name-too-short": "Gruppenname zu kurz",
"group-already-exists": "Gruppe existiert bereits",
"group-name-change-not-allowed": "Du kannst den Namen der Gruppe nicht ändern",
"post-already-deleted": "Beitrag wurde bereits gelöscht",
"post-already-restored": "Der Beitrag wurde bereits wiederhergestellt",
"topic-already-deleted": "Das Thema wurde bereits gelöscht",
"topic-already-restored": "Das Thema wurde bereits wiederhergestellt",
"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": "Vorschaubilder für Themen sind deaktiviert",
"invalid-file": "Datei ungültig",
"uploads-are-disabled": "Uploads sind deaktiviert",
"upload-error": "Upload-Fehler: %1",
"signature-too-long": "Die Signatur darf maximal %1 Zeichen enthalten!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!",
"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.",
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
"reload-failed": "Es ist ein Problem während des Reloads von NodeBB aufgetreten: \"%1\". NodeBB wird weiterhin clientseitige Assets bereitstellen, allerdings solltest du das, was du vor dem Reload gemacht hast, rückgängig machen."
}

View File

@@ -71,5 +71,6 @@
"guest": "Gast",
"guests": "Gäste",
"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": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "Gruppe betrachten",
"details.title": "Gruppendetails",
"details.members": "Mitgliederliste",

View File

@@ -16,6 +16,7 @@
"favourited_your_post_in": "<strong>%1</strong> hat deinen Beitrag in <strong>%2</strong> favorisiert.",
"user_flagged_post_in": "<strong>%1</strong> hat einen Beitrag in </strong>%2</strong> gemeldet",
"user_posted_to": "<strong>%1</strong> hat auf <strong>%2</strong> geantwortet.",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_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",

View File

@@ -12,5 +12,7 @@
"user.posts": "Beiträge von %1",
"user.topics": "Themen von %1",
"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": "Additionally, the administrator has left this message:"
}

View File

@@ -2,5 +2,6 @@
"no_tag_topics": "Es gibt keine Themen mit diesem Tag.",
"tags": "Tags",
"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."
}

View File

@@ -18,7 +18,6 @@
"restore": "Wiederherstellen",
"move": "verschieben",
"fork": "Aufspalten",
"banned": "gesperrt",
"link": "Link",
"share": "Teilen",
"tools": "Tools",
@@ -34,9 +33,11 @@
"login_to_subscribe": "Bitte registrieren oder einloggen um dieses Thema zu abonnieren",
"markAsUnreadForAll.success": "Thema für Alle als ungelesen markiert.",
"watch": "Beobachten",
"unwatch": "Nicht mehr beobachten",
"watch.title": "Bei neuen Antworten benachrichtigen",
"unwatch.title": "Dieses Thema nicht mehr beobachten",
"share_this_post": "Diesen Beitrag teilen",
"thread_tools.title": "Tools",
"thread_tools.title": "Themen-Tools",
"thread_tools.markAsUnreadForAll": "Als ungelesen markieren",
"thread_tools.pin": "Thema anpinnen",
"thread_tools.unpin": "Thema nicht mehr anpinnen",
@@ -46,11 +47,11 @@
"thread_tools.move_all": "Alle verschieben",
"thread_tools.fork": "Thema aufspalten",
"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_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_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.",
"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?",
@@ -71,7 +72,7 @@
"topic_will_be_moved_to": "Dieses Thema wird verschoben nach",
"fork_topic_instruction": "Klicke auf die Beiträge, die du aufspalten willst",
"fork_no_pids": "Keine Beiträge ausgewählt!",
"fork_success": "Thema erfolgreich abgespalten! Klicke hier, um zum abgespalteten Thema zu gelangen.",
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
"composer.title_placeholder": "Hier den Titel des Themas eingeben...",
"composer.discard": "Verwerfen",
"composer.submit": "Absenden",

View File

@@ -5,7 +5,7 @@
"email": "E-Mail",
"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 widerherstellen</strong><br /><br />Gebe deinen Benutzernamen ein, um zu bestätigen, dass du dieses Konto terminieren möchtest.",
"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",
"website": "Homepage",
"location": "Wohnort",
@@ -29,6 +29,7 @@
"edit": "Ändern",
"uploaded_picture": "Hochgeladene Bilder",
"upload_new_picture": "Neues Bild hochladen",
"upload_new_picture_from_url": "Neues Bild von URL hochladen",
"current_password": "Aktuelles Passwort",
"change_password": "Passwort ändern",
"change_password_error": "Ungültiges Passwort!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Einstellungen",
"show_email": "Zeige meine E-Mail Adresse an.",
"show_fullname": "Show My Full Name",
"digest_label": "Auszug abonnieren",
"digest_description": "Abonniere E-Mail-Benachrichtigungen für dieses Forum (neue Benachrichtigungen und Themen) nach einem festen Zeitplan.",
"digest_off": "Aus",

View File

@@ -5,6 +5,5 @@
"search": "Suchen",
"enter_username": "Benutzer durchsuchen",
"load_more": "mehr laden",
"user-not-found": "Benutzer nicht gefunden!",
"users-found-search-took": "%1 Benutzer gefunden! Die Suche dauerte %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Invalid User Data",
"invalid-password": "Invalid Password",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Invalid pagination value",
"username-taken": "Username taken",
"email-taken": "Email taken",
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Username too short",
"username-too-long": "Username too long",
"user-banned": "User banned",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "Category doesn't exist",
"no-topic": "Topic doesn't exist",
"no-post": "Post doesn't exist",
"no-group": "Group doesn't exist",
"no-user": "User doesn't exist",
"no-teaser": "Teaser doesn't exist",
"no-privileges": "You don't have enough privileges for this action.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Category disabled",
"topic-locked": "Topic Locked",
"still-uploading": "Please wait for uploads to complete.",
"content-too-short": "Please enter a longer post. At least %1 characters.",
"title-too-short": "Please enter a longer title. At least %1 characters.",
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
"too-many-posts": "You can only post every %1 seconds.",
"file-too-big": "Maximum allowed file size is %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "You cannot vote for your own post",
"already-favourited": "You already favourited this post",
"already-unfavourited": "You already unfavourited this post",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "You can't ban other admins!",
"invalid-image-type": "Invalid image type",
"group-name-too-short": "Group name too short",
"group-already-exists": "Group already exists",
"group-name-change-not-allowed": "Group name change not allowed",
"post-already-deleted": "Post already deleted",
"post-already-restored": "Post already restored",
"topic-already-deleted": "Topic already deleted",
"topic-already-restored": "Topic already restored",
"post-already-deleted": "This post has already been deleted",
"post-already-restored": "This post has already been restored",
"topic-already-deleted": "This topic has already been deleted",
"topic-already-restored": "This topic has already been restored",
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
"invalid-file": "Invalid File",
"uploads-are-disabled": "Uploads are disabled",
"upload-error": "Upload Error : %1",
"signature-too-long": "Signature can't be longer than %1 characters!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "You can't chat with yourself!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "Guest",
"guests": "Guests",
"updated.title": "Forum Updated",
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "You have unread notifications.",
"new_message_from": "New message from <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> has moved your post.",
"moved_your_topic": "<strong>%1<strong> has moved your topic.",
"moved_your_post": "<strong>%1</strong> has moved your post.",
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "Email Confirmed",

View File

@@ -12,5 +12,7 @@
"user.posts": "Posts made by %1",
"user.topics": "Topics created by %1",
"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:"
}

View File

@@ -2,5 +2,6 @@
"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."
}

View File

@@ -18,7 +18,6 @@
"restore": "Restore",
"move": "Move",
"fork": "Fork",
"banned": "banned",
"link": "Link",
"share": "Share",
"tools": "Tools",
@@ -28,15 +27,17 @@
"flag_title": "Flag this post for moderation",
"flag_confirm": "Are you sure you want to flag this post?",
"flag_success": "This post has been flagged for moderation.",
"deleted_message": "This 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.",
"not_following_topic.message": "You will no longer receive notifications from this topic.",
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
"markAsUnreadForAll.success": "Topic marked as unread for all.",
"watch": "Watch",
"unwatch": "Unwatch",
"watch.title": "Be notified of new replies in this topic",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Share this Post",
"thread_tools.title": "Thread Tools",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "Mark Unread",
"thread_tools.pin": "Pin Topic",
"thread_tools.unpin": "Unpin Topic",
@@ -46,11 +47,11 @@
"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 thread?",
"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 thread?",
"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 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",
"post_delete_confirm": "Are you sure you want to delete this post?",
"post_restore_confirm": "Are you sure you want to restore this post?",
@@ -71,7 +72,7 @@
"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": "Succesfully forked topic! Click here to go to the forked topic.",
"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",

View File

@@ -29,6 +29,7 @@
"edit": "Edit",
"uploaded_picture": "Uploaded Picture",
"upload_new_picture": "Upload New Picture",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Current Password",
"change_password": "Change Password",
"change_password_error": "Invalid Password!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Settings",
"show_email": "Show My Email",
"show_fullname": "Show My Full Name",
"digest_label": "Subscribe to Digest",
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
"digest_off": "Off",

View File

@@ -5,6 +5,5 @@
"search": "Search",
"enter_username": "Gimme y'er handle",
"load_more": "Load More",
"user-not-found": "User not found!",
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
}

View File

@@ -13,7 +13,7 @@
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -22,21 +22,21 @@
"username-taken": "Username taken",
"email-taken": "Email taken",
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Username too short",
"username-too-long": "Username too long",
"user-banned": "User banned",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category doesn't exist",
"no-topic": "Topic doesn't exist",
"no-post": "Post doesn't exist",
"no-group": "Group doesn't exist",
"no-user": "User doesn't exist",
"no-teaser": "Teaser doesn't exist",
"no-privileges": "You don't have enough privileges for this action.",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Category disabled",
@@ -44,16 +44,16 @@
"topic-locked": "Topic Locked",
"still-uploading": "Please wait for uploads to complete.",
"content-too-short": "Please enter a longer post. At least %1 characters.",
"title-too-short": "Please enter a longer title. At least %1 characters.",
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
"invalid-title": "Invalid title!",
"too-many-posts": "You can only post every %1 seconds.",
"file-too-big": "Maximum allowed file size is %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "You cannot vote for your own post",
"already-favourited": "You already favourited this post",
"already-unfavourited": "You already unfavourited this post",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "You can't ban other admins!",
@@ -63,26 +63,25 @@
"group-already-exists": "Group already exists",
"group-name-change-not-allowed": "Group name change not allowed",
"post-already-deleted": "Post already deleted",
"post-already-restored": "Post already restored",
"topic-already-deleted": "Topic already deleted",
"topic-already-restored": "Topic already restored",
"post-already-deleted": "This post has already been deleted",
"post-already-restored": "This post has already been restored",
"topic-already-deleted": "This topic has already been deleted",
"topic-already-restored": "This topic has already been restored",
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
"invalid-file": "Invalid File",
"uploads-are-disabled": "Uploads are disabled",
"upload-error": "Upload Error : %1",
"signature-too-long" : "Signature can't be longer than %1 characters!",
"signature-too-long" : "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "You can't chat with yourself!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -94,5 +94,7 @@
"guests": "Guests",
"updated.title": "Forum Updated",
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",

View File

@@ -13,11 +13,12 @@
"new_message_from": "New message from <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> has moved your post.",
"moved_your_topic": "<strong>%1<strong> has moved your topic.",
"moved_your_post": "<strong>%1</strong> has moved your post.",
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to" : "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",

View File

@@ -12,5 +12,8 @@
"user.posts": "Posts made by %1",
"user.topics": "Topics created by %1",
"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:"
}

View File

@@ -21,7 +21,6 @@
"restore": "Restore",
"move": "Move",
"fork": "Fork",
"banned": "banned",
"link": "Link",
"share": "Share",
"tools": "Tools",
@@ -88,7 +87,7 @@
"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": "Succesfully forked topic! Click here to go to the forked topic.",
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
"composer.title_placeholder": "Enter your topic title here...",
"composer.discard": "Discard",

View File

@@ -52,6 +52,7 @@
"settings": "Settings",
"show_email": "Show My Email",
"show_fullname": "Show My Full Name",
"digest_label": "Subscribe to Digest",
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
"digest_off": "Off",

View File

@@ -5,6 +5,5 @@
"search": "Search",
"enter_username": "Enter a username to search",
"load_more": "Load More",
"user-not-found": "User not found!",
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Invalid User Data",
"invalid-password": "Invalid Password",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Invalid pagination value",
"username-taken": "Username taken",
"email-taken": "Email taken",
"email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Username too short",
"username-too-long": "Username too long",
"user-banned": "User banned",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "Category doesn't exist",
"no-topic": "Topic doesn't exist",
"no-post": "Post doesn't exist",
"no-group": "Group doesn't exist",
"no-user": "User doesn't exist",
"no-teaser": "Teaser doesn't exist",
"no-privileges": "You don't have enough privileges for this action.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Category disabled",
"topic-locked": "Topic Locked",
"still-uploading": "Please wait for uploads to complete.",
"content-too-short": "Please enter a longer post. At least %1 characters.",
"title-too-short": "Please enter a longer title. At least %1 characters.",
"content-too-short": "Please enter a longer post. Posts should contain at least %1 characters.",
"title-too-short": "Please enter a longer title. Titles should contain at least %1 characters.",
"title-too-long": "Please enter a shorter title. Titles can't be longer than %1 characters.",
"too-many-posts": "You can only post every %1 seconds.",
"file-too-big": "Maximum allowed file size is %1 kbs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "You cannot vote for your own post",
"already-favourited": "You already favorited this post",
"already-unfavourited": "You already unfavorited this post",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "You can't ban other admins!",
"invalid-image-type": "Invalid image type",
"group-name-too-short": "Group name too short",
"group-already-exists": "Group already exists",
"group-name-change-not-allowed": "Group name change not allowed",
"post-already-deleted": "Post already deleted",
"post-already-restored": "Post already restored",
"topic-already-deleted": "Topic already deleted",
"topic-already-restored": "Topic already restored",
"post-already-deleted": "This post has already been deleted",
"post-already-restored": "This post has already been restored",
"topic-already-deleted": "This topic has already been deleted",
"topic-already-restored": "This topic has already been restored",
"topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
"invalid-file": "Invalid File",
"uploads-are-disabled": "Uploads are disabled",
"upload-error": "Upload Error : %1",
"signature-too-long": "Signature can't be longer than %1 characters!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "You can't chat with yourself!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "Guest",
"guests": "Guests",
"updated.title": "Forum Updated",
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page."
"updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "You have unread notifications.",
"new_message_from": "New message from <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> has upvoted your post in <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> has moved your post.",
"moved_your_topic": "<strong>%1<strong> has moved your topic.",
"moved_your_post": "<strong>%1</strong> has moved your post.",
"moved_your_topic": "<strong>%1</strong> has moved your topic.",
"favourited_your_post_in": "<strong>%1</strong> has favourited your post in <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "Email Confirmed",

View File

@@ -12,5 +12,7 @@
"user.posts": "Posts made by %1",
"user.topics": "Topics created by %1",
"user.favourites": "%1's Favorite 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:"
}

View File

@@ -2,5 +2,6 @@
"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."
}

View File

@@ -18,7 +18,6 @@
"restore": "Restore",
"move": "Move",
"fork": "Fork",
"banned": "banned",
"link": "Link",
"share": "Share",
"tools": "Tools",
@@ -28,15 +27,17 @@
"flag_title": "Flag this post for moderation",
"flag_confirm": "Are you sure you want to flag this post?",
"flag_success": "This post has been flagged for moderation.",
"deleted_message": "This 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.",
"not_following_topic.message": "You will no longer receive notifications from this topic.",
"login_to_subscribe": "Please register or log in in order to subscribe to this topic.",
"markAsUnreadForAll.success": "Topic marked as unread for all.",
"watch": "Watch",
"unwatch": "Unwatch",
"watch.title": "Be notified of new replies in this topic",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Share this Post",
"thread_tools.title": "Thread Tools",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "Mark Unread",
"thread_tools.pin": "Pin Topic",
"thread_tools.unpin": "Unpin Topic",
@@ -46,11 +47,11 @@
"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 thread?",
"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 thread?",
"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 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",
"post_delete_confirm": "Are you sure you want to delete this post?",
"post_restore_confirm": "Are you sure you want to restore this post?",
@@ -71,7 +72,7 @@
"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": "Succesfully forked topic! Click here to go to the forked topic.",
"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",

View File

@@ -29,6 +29,7 @@
"edit": "Edit",
"uploaded_picture": "Uploaded Picture",
"upload_new_picture": "Upload New Picture",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Current Password",
"change_password": "Change Password",
"change_password_error": "Invalid Password!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Settings",
"show_email": "Show My Email",
"show_fullname": "Show My Full Name",
"digest_label": "Subscribe to Digest",
"digest_description": "Subscribe to email updates for this forum (new notifications and topics) according to a set schedule",
"digest_off": "Off",

View File

@@ -5,6 +5,5 @@
"search": "Search",
"enter_username": "Enter a username to search",
"load_more": "Load More",
"user-not-found": "User not found!",
"users-found-search-took": "%1 user(s) found! Search took %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "Recibimos una solicitud para reiniciar tu contraseña, posiblemente porque la olvidaste. Si no es así, por favor ignora este email.",
"reset.text2": "Para continuar con el reinicio de contraseña, por favor cliquea en el siguiente vínculo:",
"reset.cta": "Cliquea aquí para reiniciar tu contraseña",
"digest.notifications": "Tienes algunas notificaciónes de %1 sin leer:",
"digest.notifications": "You have unread notifications from %1:",
"digest.latest_topics": "Últimos temas de %1",
"digest.cta": "Cliquea aquí para visitar %1",
"digest.unsub.info": "Este compendio te fue enviado debido a tus ajustes de subscripción.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Datos de Usuario no válidos",
"invalid-password": "Contraseña no válida",
"invalid-username-or-password": "Por favor especifica tanto un usuario como contraseña",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Valor de paginación no válido.",
"username-taken": "Nombre de usuario ya escogido",
"email-taken": "El correo electrónico ya está escogido.",
"email-not-confirmed": "Tu correo electrónico está sin confirmar, por favor haz click aquí para confirmar tu email.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "El nombre de usuario es demasiado corto",
"username-too-long": "Nombre de usuario demasiado largo",
"user-banned": "Usuario expulsado",
"user-too-new": "Necesitas esperar %1 segundos antes de hacer tu primera publicación.",
"no-category": "La categoría no existe",
"no-topic": "El tema no existe.",
"no-post": "La publicación no existe",
"no-group": "El grupo no existe",
"no-user": "El usuario no existe",
"no-teaser": "El extracto del tema no existe.",
"no-privileges": "No tienes los privilegios necesarios para esa acción.",
"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": "Ningún plugin para email fue cargado, así que no se pudo enviar email de prueba.",
"category-disabled": "Categoría deshabilitada.",
"topic-locked": "Tema bloqueado.",
"still-uploading": "Por favor, espera a que terminen las subidas.",
"content-too-short": "Por favor, introduce una respuesta más larga, al menos de %1 caracteres.",
"title-too-short": "Por favor, introduce un título más largo, al menos de %1 caracteres.",
"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": "Por favor, introduce un título más corto, que no sobrepase los %1 caracteres.",
"too-many-posts": "Sólo puedes publicar cada %1 segundos.",
"file-too-big": "El tamaño máximo de archivo es de %1 KBs",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "No puedes votar tus propios posts",
"already-favourited": "Ya has marcado esa publicación como favorita.",
"already-unfavourited": "Ya has desmarcado este hilo como favorito",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "No puedes expulsar a otros administradores!",
"invalid-image-type": "Tipo de imagen no válido.",
"group-name-too-short": "Nombre del grupo es demasiado corto.",
"group-already-exists": "El grupo ya existe.",
"group-name-change-not-allowed": "El nombre del grupo deseado no está permitido.",
"post-already-deleted": "La publicación ya ha sido eliminada.",
"post-already-restored": "La publicación ya ha sido recuperada.",
"topic-already-deleted": "El tema ya ha sido eliminado.",
"topic-already-restored": "El tema ya ha sido recuperado.",
"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": "Las miniaturas de los temas están deshabilitadas.",
"invalid-file": "Archivo no válido.",
"uploads-are-disabled": "Las subidas están deshabilitadas.",
"upload-error": "Error de subida: %1",
"signature-too-long": "Las firmas no pueden ser más largas de %1 caracteres!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "No puedes conversar contigo mismo!",
"reputation-system-disabled": "El sistema de reputación está deshabilitado.",
"downvoting-disabled": "La votación negativa está deshabilitada.",
"not-enough-reputation-to-downvote": "No tienes suficiente reputación para votar negativo este post",
"not-enough-reputation-to-flag": "No tienes suficiente reputación para marcar esta publicación",
"not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
"reload-failed": "NodeBB encontró un problema mientras refrescar: \"%1\". NodeBB intentará cargar el resto de contenido, aunque deberías deshacer lo que hiciste antes de refrescar."
}

View File

@@ -71,5 +71,6 @@
"guest": "Invitado",
"guests": "Invitados",
"updated.title": "Foro actualizado",
"updated.message": "El foro acaba de ser actualizado a la última versión. Haz click aquí para refrescar la página."
"updated.message": "El foro acaba de ser actualizado a la última versión. Haz click aquí para refrescar la página.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "Ver Grupo",
"details.title": "Detalles de Grupo",
"details.members": "Lista de Miembros",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "Tienes notificaciones sin leer.",
"new_message_from": "Nuevo mensaje de <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> ha votado como relevante tu respuesta en <strong>%2</strong>.",
"moved_your_post": "<strong>%1<strong> ha movido su publicación.",
"moved_your_topic": "<strong>%1<strong> ha movido su tema.",
"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> ha marcado como favorito su publicación en <strong>%2</strong>.",
"user_flagged_post_in": "<strong>%1</strong> ha marcado como indebida una respuesta en <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> ha publicado una respuesta a: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> te mencionó en <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> comenzó a seguirte.",
"email-confirmed": "Correo electrónico confirmado",

View File

@@ -12,5 +12,7 @@
"user.posts": "Posteos de %1",
"user.topics": "Temas creados por %1",
"user.favourites": "Publicaciones favoritas de %1 ",
"user.settings": "Preferencias del Usuario"
"user.settings": "Preferencias del Usuario",
"maintenance.text": "%1 is currently undergoing maintenance. Please come back another time.",
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
}

View File

@@ -2,5 +2,6 @@
"no_tag_topics": "No hay temas con esta etiqueta.",
"tags": "Etiquetas",
"enter_tags_here": "Introduce las etiquetas aquí. Pulsa intro desde de cada una.",
"enter_tags_here_short": "Enter tags...",
"no_tags": "Aún no hay etiquetas."
}

View File

@@ -18,7 +18,6 @@
"restore": "Restaurar",
"move": "Mover",
"fork": "Bifurcar",
"banned": "baneado",
"link": "Link",
"share": "Compartir",
"tools": "Herramientas",
@@ -28,15 +27,17 @@
"flag_title": "Reportar esta publicación a los moderadores",
"flag_confirm": "¿Estás seguro de que quieres marcar como indebido este mensaje?",
"flag_success": "Este mensaje ha sido marcado para la moderación.",
"deleted_message": "Este tema ha sido borrado. Solo los miembros con privilegios pueden verlo.",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "Ahora recibiras notificaciones cuando alguien publique en este tema.",
"not_following_topic.message": "No recibiras notificaciones de este tema.",
"login_to_subscribe": "Por favor, conectate para subscribirte a este tema.",
"markAsUnreadForAll.success": "Publicación marcada como no leída para todos.",
"watch": "Seguir",
"unwatch": "Unwatch",
"watch.title": "Serás notificado cuando haya nuevas respuestas en este tema",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Compartir este post",
"thread_tools.title": "Herramientas del Tema",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "Marcar como no leído",
"thread_tools.pin": "Tema Importante",
"thread_tools.unpin": "Quitar Importante",
@@ -46,11 +47,11 @@
"thread_tools.move_all": "Mover todo",
"thread_tools.fork": "Bifurcar Tema",
"thread_tools.delete": "Borrar Tema",
"thread_tools.delete_confirm": "¿Estás seguro de que quieres eliminar este hilo?",
"thread_tools.delete_confirm": "Are you sure you want to delete this topic?",
"thread_tools.restore": "Restaurar Tema",
"thread_tools.restore_confirm": "¿Estás seguro de que quieres restaurar este hilo?",
"thread_tools.restore_confirm": "Are you sure you want to restore this topic?",
"thread_tools.purge": "Purgar publicación",
"thread_tools.purge_confirm": "¿Estás seguro que deseas purgar este hilo?",
"thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
"topic_move_success": "El tema ha sido movido correctamente a %1",
"post_delete_confirm": "¿Estás seguro de que quieres eliminar esta respuesta?",
"post_restore_confirm": "¿Estás seguro de que quieres restaurar esta respuesta?",
@@ -71,7 +72,7 @@
"topic_will_be_moved_to": "Este tema será movido a la categoría",
"fork_topic_instruction": "Click en las publicaciones que quieres bifurcar",
"fork_no_pids": "¡No seleccionaste publicaciones!",
"fork_success": "Succesfully forked topic! Click here to go to the forked topic.",
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
"composer.title_placeholder": "Ingresa el titulo de tu tema",
"composer.discard": "Descartar",
"composer.submit": "Enviar",

View File

@@ -29,6 +29,7 @@
"edit": "Editar",
"uploaded_picture": "Fotos subidas",
"upload_new_picture": "Subir Nueva Foto",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Contraseña actual",
"change_password": "Cambiar Contraseña",
"change_password_error": "Contraseña no válida!",
@@ -46,6 +47,7 @@
"max": "máx.",
"settings": "Opciones",
"show_email": "Mostrar mi Correo electrónico",
"show_fullname": "Show My Full Name",
"digest_label": "Suscribirse a Resumen",
"digest_description": "Suscribirse a actualizaciones por correo electrónico a este foro (nuevas notificaciones y temas) de acuerdo a una recurrencia definida",
"digest_off": "Apagado",

View File

@@ -5,6 +5,5 @@
"search": "Buscar",
"enter_username": "Ingresa el nombre de usuario que quieres buscar",
"load_more": "Cargar más",
"user-not-found": "¡Usuario no encontrado!",
"users-found-search-took": "¡%1 usuario(s) encontrados! La búsqueda tardó %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "Vigased kasutaja andmed",
"invalid-password": "Vigane parool",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "Vigane lehe väärtus",
"username-taken": "Kasutajanimi on juba võetud",
"email-taken": "Email on võetud",
"email-not-confirmed": "Su emaili aadress ei ole kinnitatud, vajuta siia et kinnitada.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "Kasutajanimi on liiga lühike",
"username-too-long": "Username too long",
"user-banned": "Kasutaja bannitud",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "Kategooriat ei eksisteeri",
"no-topic": "Teemat ei eksisteeri",
"no-post": "Postitust ei eksisteeri",
"no-group": "Gruppi ei eksisteeri",
"no-user": "Kasutajat ei eksisteeri",
"no-teaser": "Eelvaadet ei eksisteeri",
"no-privileges": "Sul pole piisvalt õigusi.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "Kategooria keelatud",
"topic-locked": "Teema lukustatud",
"still-uploading": "Palun oota, kuni üleslaadimised on laetud.",
"content-too-short": "Palun sisesta pikem vastus. Vähemalt %1 tähemärki.",
"title-too-short": "Palun sisesta pikem pealkiri. Vähemalt %1 tähemärki.",
"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": "Palun sisesta lühem pealkiri. Pealkirjad ei saa olla pikemad kui %1 tähemärki.",
"too-many-posts": "Sa saad postitada iga %1 sekundi tagant.",
"file-too-big": "Maksimaalne üleslaetava faili suurus on %1 kb",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "Sa ei saa hääletada enda postituse poolt",
"already-favourited": "Sa juba märkisid selle postituse lemmikuks",
"already-unfavourited": "Sa juba eemaldasid selle postituse lemmikutest",
"already-favourited": "You have already favourited this post",
"already-unfavourited": "You have already unfavourited this post",
"cant-ban-other-admins": "Sa ei saa bannida teisi administraatoreid!",
"invalid-image-type": "Vigane pildi formaat",
"group-name-too-short": "Grupi nimi liiga lühike",
"group-already-exists": "Grupp juba eksisteerib",
"group-name-change-not-allowed": "Grupi nimevahetus ei ole lubatud",
"post-already-deleted": "Postitus on juba kustutatud",
"post-already-restored": "Postitus on juba taastatud",
"topic-already-deleted": "Teema on juba kustutatud",
"topic-already-restored": "Teema on juba taastatud",
"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": "Teema thumbnailid on keelatud.",
"invalid-file": "Vigane fail",
"uploads-are-disabled": "Üleslaadimised on keelatud",
"upload-error": "Üleslaadimise viga: %1",
"signature-too-long": "Allkiri ei saa olla pikem kui %1 tähemärki!",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "Sa ei saa endaga vestelda!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "Sul ei ole piisavalt reputatsiooni, et anda negatiivset hinnangut sellele postitusele.",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "Külaline",
"guests": "Külalised",
"updated.title": "Foorum on uuendatud",
"updated.message": "See foorum uuendati just kõige uuemale versioonile. Vajuta siia et värskendada veebilehte."
"updated.message": "See foorum uuendati just kõige uuemale versioonile. Vajuta siia et värskendada veebilehte.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"you_have_unread_notifications": "Sul ei ole lugemata teateid.",
"new_message_from": "Uus sõnum kasutajalt <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.",
"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": "Kasutaja <strong>%1</strong> postitas vastuse teemasse <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mainis sind postituses <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "Emaili aadress kinnitatud",

View File

@@ -12,5 +12,7 @@
"user.posts": "Postitused, mis on tehtud kasutaja %1 poolt",
"user.topics": "Teemad on kirjutanud %1",
"user.favourites": "%1's lemmikud postitused",
"user.settings": "Kasutaja sätted"
"user.settings": "Kasutaja sätted",
"maintenance.text": "%1 is currently undergoing maintenance. Please come back another time.",
"maintenance.messageIntro": "Additionally, the administrator has left this message:"
}

View File

@@ -2,5 +2,6 @@
"no_tag_topics": "Teemasid, mis sisaldaksid seda märksõna, ei eksisteeri.",
"tags": "Märksõnad",
"enter_tags_here": "Sisesta märksõnad siia. Iga märksõna tagant sisesta enterit.",
"enter_tags_here_short": "Enter tags...",
"no_tags": "Siin ei ole veel ühtegi märksõna."
}

View File

@@ -18,7 +18,6 @@
"restore": "Taasta",
"move": "Liiguta",
"fork": "Fork",
"banned": "Bannitud",
"link": "Ühenda",
"share": "Jaga",
"tools": "Tööriistad",
@@ -28,15 +27,17 @@
"flag_title": "Märgista see postitus modereerimiseks",
"flag_confirm": "Oled kindel, et soovid märgistada antud postituse?",
"flag_success": "See posits on nüüd märgistatud modereerimiseks.",
"deleted_message": "Teema kustutati. Ainult kasutajad, kellel on piisavad õigused saavad seda veel näha.",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "Sulle ei edastata enam teateid uutest postitustest kui keegi postitab siia teemasse.",
"not_following_topic.message": "Sulle ei edastata enam teateid uutest postitustest siin teemas.",
"login_to_subscribe": "Palun registreeru kasutajaks või logi sisse, et tellida teateid selle postituse kohta.",
"markAsUnreadForAll.success": "Teema märgitud mitte-loetuks kõikidele.",
"watch": "Vaata",
"unwatch": "Unwatch",
"watch.title": "Saa teateid uutest postitustest siin teemas",
"unwatch.title": "Stop watching this topic",
"share_this_post": "Jaga seda postitust",
"thread_tools.title": "Teema tööriistad",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "Märgi mitte-loetuks",
"thread_tools.pin": "Tõsta esile teema",
"thread_tools.unpin": "Märgista teema",
@@ -46,11 +47,11 @@
"thread_tools.move_all": "Liiguta kõik",
"thread_tools.fork": "Fork Topic",
"thread_tools.delete": "Kustuta teema",
"thread_tools.delete_confirm": "Oled kindel, et soovid kustutada antud teema?",
"thread_tools.delete_confirm": "Are you sure you want to delete this topic?",
"thread_tools.restore": "Taasta teema",
"thread_tools.restore_confirm": "Oled kindel, et soovid taastada antud teema?",
"thread_tools.restore_confirm": "Are you sure you want to restore this topic?",
"thread_tools.purge": "Kustuta teema täielikult",
"thread_tools.purge_confirm": "Oled kindel, et soovid täielikult kustutada selle teema?",
"thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
"topic_move_success": "Teema liigutatud kategooriasse %1",
"post_delete_confirm": "Oled kindel, et soovid kustutada selle postituse?",
"post_restore_confirm": "Oled kindel, et soovid taastada antud postituse?",
@@ -71,7 +72,7 @@
"topic_will_be_moved_to": "See teema liigutatakse antud kategooriasse",
"fork_topic_instruction": "Vajuta postitustele, mida soovid forkida",
"fork_no_pids": "Sa ei ole postitusi valinud!",
"fork_success": "Succesfully forked topic! Click here to go to the forked topic.",
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
"composer.title_placeholder": "Sisesta teema pealkiri siia...",
"composer.discard": "Katkesta",
"composer.submit": "Postita",

View File

@@ -29,6 +29,7 @@
"edit": "Muuda",
"uploaded_picture": "Üleslaetud pilt",
"upload_new_picture": "Laadi uus pilt",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "Praegune parool",
"change_password": "Vaheta parooli",
"change_password_error": "Vigane parool!",
@@ -46,6 +47,7 @@
"max": "max.",
"settings": "Seaded",
"show_email": "Näita minu emaili",
"show_fullname": "Show My Full Name",
"digest_label": "Telli",
"digest_description": "Telli kõik teated emaili teel (uued teated ja teemad).",
"digest_off": "Väljas",

View File

@@ -5,6 +5,5 @@
"search": "Otsi",
"enter_username": "Sisesta kasutajanimi, keda soovid otsida",
"load_more": "Lae veel",
"user-not-found": "Kasutajat ei leitud!",
"users-found-search-took": "%1kasutaja(t) leiti! Otsing kestis %2 ms."
}

View File

@@ -9,7 +9,7 @@
"reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
"reset.text2": "To continue with the password reset, please click on the following link:",
"reset.cta": "Click here to reset your password",
"digest.notifications": "You have some unread notifications from %1:",
"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.",

View File

@@ -13,51 +13,52 @@
"invalid-user-data": "داده‌های کاربری نامعتبر است.",
"invalid-password": "گذرواژه نامعتبر است.",
"invalid-username-or-password": "Please specify both a username and password",
"invalid-search-term": "Invalid search term",
"invalid-pagination-value": "عدد صفحه‌بندی نامعتبر است.",
"username-taken": "این نام کاربری گرفته شده است.",
"email-taken": "این رایانامه گرفته شده است.",
"email-not-confirmed": "رایانامه شما تأیید نشده است، لطفاً برای تأیید رایانامه‌تان اینجا را بفشارید.",
"email-not-confirmed": "Your email has not been confirmed yet, please click here to confirm your email.",
"username-too-short": "نام کاربری خیلی کوتاه است.",
"username-too-long": "Username too long",
"user-banned": "کاربر محروم شد.",
"user-too-new": "You need to wait %1 seconds before making your first post!",
"no-category": "چنین دسته‌ای وجود ندارد.",
"no-topic": "چنین جستاری وجود ندارد.",
"no-post": "چنین دیدگاهی وجود ندارد.",
"no-group": "چنین گروهی وجود ندارد.",
"no-user": "چنین کاربری وجود ندارد.",
"no-teaser": "چکیدهٔ دیدگاه وجود ندارد.",
"no-privileges": "شما دسترسی کافی برای این کار را ندارید.",
"user-too-new": "Sorry, you are required to wait %1 seconds before making your first post",
"no-category": "Category does not exist",
"no-topic": "Topic does not exist",
"no-post": "Post does not exist",
"no-group": "Group does not exist",
"no-user": "User does not exist",
"no-teaser": "Teaser does not exist",
"no-privileges": "You do not have enough privileges for this action.",
"no-emailers-configured": "No email plugins were loaded, so a test email could not be sent",
"category-disabled": "دسته غیر‌فعال شد.",
"topic-locked": "جستار بسته شد.",
"still-uploading": "خواهشمندیم تا پایان بارگذاری‌ها شکیبا باشید.",
"content-too-short": "خواهشمندیم دیدگاه بلندتری بنویسید. دست‌کم با %1 نویسه.",
"title-too-short": "خواهشمندیم عنوان بلندتری بنویسید. دست‌کم با %1 نویسه.",
"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": "شما تنها می‌توانید هر %1 ثانیه دیدگاهی بفرستید.",
"file-too-big": "بیشنیهٔ اندازهٔ مجاز پرونده %1 کیلوبایت است.",
"too-many-posts": "You can only post once every %1 seconds - please wait before posting again",
"file-too-big": "Maximum allowed file size is %1 kbs - please upload a smaller file",
"cant-vote-self-post": "شما نمی‌توانید به دیدگاه خود رای بدهید.",
"already-favourited": "این دیدگاه را پیش از این پسندیده‌اید.",
"already-unfavourited": "این دیدگاه را پیش از این عدم پسند کرده‌اید.",
"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": "دیدگاه پیش‌تر پاک شده است.",
"post-already-restored": "دیدگاه پیش‌تر بازگردانی شده است.",
"topic-already-deleted": "جستار پیش‌تر پاک شده است.",
"topic-already-restored": "جستار پیش‌تر بازگردانی شده است.",
"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": "امضا نمی‌تواند بیش‌تر از %1 نویسه داشته باشد.",
"signature-too-long": "Sorry, your signature cannot be longer than %1 characters.",
"cant-chat-with-yourself": "شما نمی‌توانید با خودتان گفتگو کنید!",
"reputation-system-disabled": "Reputation system is disabled.",
"downvoting-disabled": "Downvoting is disabled",
"not-enough-reputation-to-downvote": "شما اعتبار کافی برای دادن رای منفی به این دیدگاه را ندارید.",
"not-enough-reputation-to-flag": "Yo do not have enough reputation to flag 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."
}

View File

@@ -71,5 +71,6 @@
"guest": "مهمان",
"guests": "مهمان‌ها",
"updated.title": "انجمن بروزرسانی شد",
"updated.message": "این انجمن به آخرین نسخه بروزرسانی شد. برای بارگزاری مجدد صفحه اینجا کلیک کنید."
"updated.message": "این انجمن به آخرین نسخه بروزرسانی شد. برای بارگزاری مجدد صفحه اینجا کلیک کنید.",
"privacy": "Privacy"
}

View File

@@ -1,4 +1,5 @@
{
"groups": "Groups",
"view_group": "View Group",
"details.title": "Group Details",
"details.members": "Member List",

View File

@@ -11,11 +11,12 @@
"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.",
"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>%2</strong> از سوی <strong>%1</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "%1 در %2 به شما اشاره کرد",
"user_started_following_you": "<strong>%1</strong> started following you.",
"email-confirmed": "رایانامه تایید شد",

View File

@@ -12,5 +12,7 @@
"user.posts": "دیدگاه‌های %1",
"user.topics": "%1 این جستار را ساخت.",
"user.favourites": "دیدگاه‌های پسندیدهٔ %1",
"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:"
}

View File

@@ -2,5 +2,6 @@
"no_tag_topics": "جُستاری با این برچسب وجود ندارد.",
"tags": "برچسب‌ها",
"enter_tags_here": "برچسب‌ها را اینجا وارد کنید. بعد از هر برچسب، اینتر بزنید.",
"enter_tags_here_short": "Enter tags...",
"no_tags": "هنوز برچسبی وجود ندارد."
}

View File

@@ -18,7 +18,6 @@
"restore": "برگرداندن",
"move": "جابه‌جا کردن",
"fork": "شاخه ساختن",
"banned": "مسدود",
"link": "پیوند",
"share": "اشتراک‌گذاری",
"tools": "ابزارها",
@@ -28,15 +27,17 @@
"flag_title": "پرچم‌گذاری این جستار برای بررسی ناظران",
"flag_confirm": "آیا مطمئنید که می‌خواهید روی این دیدگاه پرچم بگذارید.",
"flag_success": "این جستار برای بررسی ناظران پرچم گذاشته شد.",
"deleted_message": "این جستار پاک شده است. تنها کاربران دارای پروانه‌های مدیریت جستار می‌توانند آن را ببینند.",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "از این پس اگر کسی در این جستار دیدگاه بگذارد، شما آگاه خواهید شد.",
"not_following_topic.message": "شما دیگر آگاه‌سازی‌های این جستار را دریافت نخواهید کرد.",
"login_to_subscribe": "برای دنبال کردن این جستار، لطفا نام‌نویسی کنید یا به درون بیایید.",
"markAsUnreadForAll.success": "جستار برای همگان نخوانده در نظر گرفته شد.",
"watch": "تماشا کردن",
"unwatch": "Unwatch",
"watch.title": "از پاسخ‌های تازه به این جستار آگاه شوید.",
"unwatch.title": "Stop watching this topic",
"share_this_post": "به اشتراک‌گذاری این جستار",
"thread_tools.title": "ابزاهای جستار",
"thread_tools.title": "Topic Tools",
"thread_tools.markAsUnreadForAll": "نخوانده بگیر",
"thread_tools.pin": "سنجاق زدن جستار",
"thread_tools.unpin": "برداشتن سنجاق جستار",
@@ -46,11 +47,11 @@
"thread_tools.move_all": "جابجایی همه",
"thread_tools.fork": "شاخه ساختن از جستار",
"thread_tools.delete": "پاک کردن جستار",
"thread_tools.delete_confirm": "آیا از پاک کردن این جستار اطمینان دارید؟",
"thread_tools.delete_confirm": "Are you sure you want to delete this topic?",
"thread_tools.restore": "برگرداندن جستار",
"thread_tools.restore_confirm": "آیا از بازگردانی این جستار اطمینان دارید؟",
"thread_tools.restore_confirm": "Are you sure you want to restore this topic?",
"thread_tools.purge": "پاک کردن جستار",
"thread_tools.purge_confirm": "آیا از پاک کردن این جستار اطمینان دارید؟",
"thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
"topic_move_success": "جابه‌جایی این جستار به %1 باموفقیت انجام شد.",
"post_delete_confirm": "آیا از پاک کردن این دیدگاه اطمینان دارید؟",
"post_restore_confirm": "آیا از بازگردانی این دیدگاه اطمینان دارید؟",
@@ -71,7 +72,7 @@
"topic_will_be_moved_to": "این جستار جابه‌جا خواهد شد به دستهٔ",
"fork_topic_instruction": "دیدگاه‌هایی را که می‌خواهید به جستار تازه ببرید، برگزینید",
"fork_no_pids": "هیچ دیدگاهی انتخاب نشده!",
"fork_success": "Succesfully forked topic! Click here to go to the forked topic.",
"fork_success": "Successfully forked topic! Click here to go to the forked topic.",
"composer.title_placeholder": "سرنویس جستارتان را اینجا بنویسید...",
"composer.discard": "دور بیانداز",
"composer.submit": "بفرست",

View File

@@ -29,6 +29,7 @@
"edit": "ویرایش",
"uploaded_picture": "تصویر بارشده",
"upload_new_picture": "بارگذاری تصویر تازه",
"upload_new_picture_from_url": "Upload New Picture From URL",
"current_password": "گذرواژه کنونی",
"change_password": "تغیر گذرواژه",
"change_password_error": "گذرواژهٔ نامعتبر!",
@@ -46,6 +47,7 @@
"max": "بیشینه",
"settings": "تنظیمات",
"show_email": "نمایش رایانامه‌ام",
"show_fullname": "Show My Full Name",
"digest_label": "مشترک شدن در چکیده",
"digest_description": "مشترک شدن برای دریافت تازه‌هی این انجمن (جستارها و آکاه‌سازی‌های تازه) با رایانامه روی یک برنامه زمان‌بندی",
"digest_off": "خاموش",

View File

@@ -5,6 +5,5 @@
"search": "جستجو",
"enter_username": "یک نام کاربری برای جستجو وارد کنید",
"load_more": "بارگذاری بیش‌تر",
"user-not-found": "کاربر یافت نشد!",
"users-found-search-took": "%1 کاربر() در مدت زمان %2 میلی ثانیه یافت شد!"
}

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