From 5696ea239633151d5adb6fade0dfa8b2d7805d7e Mon Sep 17 00:00:00 2001 From: barisusakli Date: Tue, 9 Sep 2014 22:09:27 -0400 Subject: [PATCH 01/16] check errors on decodeURIComponent --- src/meta/title.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/meta/title.js b/src/meta/title.js index 652001af97..1de916ebec 100644 --- a/src/meta/title.js +++ b/src/meta/title.js @@ -1,6 +1,7 @@ 'use strict'; -var user = require('../user'), +var winston = require('winston'), + user = require('../user'), translator = require('../../public/src/translator'); module.exports = function(Meta) { @@ -14,7 +15,14 @@ module.exports = function(Meta) { }; Meta.title.build = function (urlFragment, language, callback) { - Meta.title.parseFragment(decodeURIComponent(urlFragment), language, function(err, title) { + var uri = ''; + try { + uri = decodeURIComponent(urlFragment); + } catch(e) { + winston.error('Invalid url fragment :' + urlFragment); + return callback(null, Meta.config.browserTitle || 'NodeBB'); + } + Meta.title.parseFragment(uri, language, function(err, title) { if (err) { title = Meta.config.browserTitle || 'NodeBB'; } else { From e9798028deadf79605353aebc4bf6d65e37d12ed Mon Sep 17 00:00:00 2001 From: barisusakli Date: Tue, 9 Sep 2014 22:10:17 -0400 Subject: [PATCH 02/16] show error --- src/meta/title.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/meta/title.js b/src/meta/title.js index 1de916ebec..00e5697a2d 100644 --- a/src/meta/title.js +++ b/src/meta/title.js @@ -19,7 +19,7 @@ module.exports = function(Meta) { try { uri = decodeURIComponent(urlFragment); } catch(e) { - winston.error('Invalid url fragment :' + urlFragment); + winston.error('Invalid url fragment : ' + urlFragment, e.message); return callback(null, Meta.config.browserTitle || 'NodeBB'); } Meta.title.parseFragment(uri, language, function(err, title) { From 25ed131b13392bc89c5e0d631927b8230052f7c9 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Wed, 10 Sep 2014 13:04:57 -0400 Subject: [PATCH 03/16] show stack trace of error --- src/meta/title.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/meta/title.js b/src/meta/title.js index 00e5697a2d..0019cdb686 100644 --- a/src/meta/title.js +++ b/src/meta/title.js @@ -19,7 +19,7 @@ module.exports = function(Meta) { try { uri = decodeURIComponent(urlFragment); } catch(e) { - winston.error('Invalid url fragment : ' + urlFragment, e.message); + winston.error('Invalid url fragment : ' + urlFragment, e.stack); return callback(null, Meta.config.browserTitle || 'NodeBB'); } Meta.title.parseFragment(uri, language, function(err, title) { From ae02c1a06ca57ba2f7d32dce2bcf6642a627a783 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Wed, 10 Sep 2014 18:48:43 -0400 Subject: [PATCH 04/16] closes #2068 --- src/posts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/posts.js b/src/posts.js index 53a11e9d6b..856145c4c0 100644 --- a/src/posts.js +++ b/src/posts.js @@ -357,7 +357,7 @@ var async = require('async'), } posts = posts.filter(function(post) { - return parseInt(results.topics[post.tid].deleted, 10) !== 1; + return results.topics[post.tid] && parseInt(results.topics[post.tid].deleted, 10) !== 1; }); async.map(posts, function(post, next) { From 6bde9a16562a808443484c179bf7f8aaf4b7bf12 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Sat, 13 Sep 2014 19:33:09 -0400 Subject: [PATCH 05/16] prevent getTopicsByTids crash if a topic is null --- src/topics.js | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/src/topics.js b/src/topics.js index 9bde8159be..18b25c7c32 100644 --- a/src/topics.js +++ b/src/topics.js @@ -172,9 +172,9 @@ var async = require('async'), Topics.getTopicsData(tids, function(err, topics) { function mapFilter(array, field) { return array.map(function(topic) { - return topic[field]; + return topic && topic[field]; }).filter(function(value, index, array) { - return array.indexOf(value) === index; + return value && array.indexOf(value) === index; }); } @@ -225,21 +225,23 @@ var async = require('async'), }); for (var i=0; i Date: Sun, 14 Sep 2014 15:24:39 -0400 Subject: [PATCH 06/16] removed theme-rocket folder, closed #2076 --- .../cover/0231ab8358cc9079b8207bcc78b66c1d | Bin 268215 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 public/theme-rocket/cover/0231ab8358cc9079b8207bcc78b66c1d diff --git a/public/theme-rocket/cover/0231ab8358cc9079b8207bcc78b66c1d b/public/theme-rocket/cover/0231ab8358cc9079b8207bcc78b66c1d deleted file mode 100644 index b88748ab3ada20b9bbff5153b9eea7733f68247b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268215 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%0A(-Fk>pHCvDZH!YHiggcfuZJh_ zRW~{V<<0SDXr7-B$VlfJ}+Ib_>SceK|VeJ7U?OOT?M;j1%jbs#R2 z#5Xs3(;Y+PH%t4%L)ru|RPM6M^f+j(A%`QMX72Pp7k(rnDvc(!DstZqd1=*Xg%XuH z64oHy{oqO?i3#xnPkm>=RF-T5KRoF6C&i1;{#C$~yN0W!iBn!qJ(%Yn)0wno`&-~* z%gpPb1);QgYn^h-C=XDx6&$ ze9FgiAlbB^TVa{`j<`jK_hLEl^V7!KlwaP4?S?LU8ew9$bdPJj^W&P1r%*0eV$-{j8@MSLp3&6>CD?TT>|2=Tx04mjZUZtjR-xh-&d`KiB!yU=5pibj z=7`07xupswb2rOgwgx^^;1#x{?70p=ud>#;c-2jX>}5jFq>g3{(xX3$>Pk9IEZkM^JEuhPl50@~H5EoFH3U;?m6l?}jZALk(Wzgu zj*kz%auMnG4_EgRs^WD7WeKTIuyIuJw1_mfoHgmg{*D$|mu{ctE)JHN>sx#%^e2gb zQa5$Pa1zLzZd+dYBZEJYW0xwtKxju!cNHn3R5MU+a*>N!kw9$7!zyGVmoeUM?!d!)#2zCBGHXW#o5@M#m&Uj-28>M^l#tql1r(;QE#)ht9s!72sn zuO2NdJ$>B4&3EueV7yGQ@;!;`LxJTFTKjI}|Vd6oU z&JHy@6C#VJMpf|;qO@j}$gpoJDSCA#+}sYr0!n7anp!sD_@x9BqKn`8`sC%a$?4;A zH;QCeHDz3Emhg0Zs&U_y)7>G0|_ z{f{wII?kHC;TEPMH4@28Z{jQ1Xk(U2!>m+lO6;7)Xgi)|wN5Pa(jFPw5`z$7yW;|- zXAZ(&AN0?|r%9QM0?8+p>dqw0^ht#p`iLS`^9jr|ghMty`mJr8+}M-)P%M_G z$yyV%(yWPmf^^Z>;8p*9(GMz}^f^DBJwSB^lI2oElQelVB*~5cXmcH<+!okDONB*C zFZ)qYpeod2%;K(op(?YHg;|CJ^_|C@INW~8nl=wNMVp#_>A~JLP@`H$Z$@)!UB?j9 zq_3~It1&Hyb)#&z)ns&6iqdm6dn4J*LC*V3zngD$J)olp1#W8z@hZq^r!x`GsHs`e ze^AP{#*KOAdL^7ZyB3^ve8z<3;(U^iEFm|y+yU{W<0-oOuQ!eOpNDhx^jO4b$G_k; zZVq^6urgP>o&vW^!okQy`1>|r5(5S7xNvyACMg}#xYA-_=&tf`l@*n*AbLlHOA8rj z!cimJGVr0Smt0YqRGxCnuP4{pk=kg*DJA0>D%&)!?Zn^m9LEAN7E^gN4OWRq!JK48 zZ@o06AahzooyFf5s9}%lDsX>7^FnJc zMT&p_RWxw}kh|~gWj;nIdtU){W`uN7lj>!6mvnaT{ zn!4KlUjAT-3`*T5X5JU(92b=SajC&Il)*%(4*C5#Xj62*+P3ldroa5K9jvYGeK2D* zR;Q-%)pGi&!q~GI+wafF$@To~ScCYG9l_MMYd22e+uuSAF|U!s{^7k}t%3C(HQy5+ z{3`el?`$}sdDf|8xZ_uDr%}e0YX6L80ztK9w}!%!ZP@&qfr3fm!JacI-;gD=Cgl)@ zl2&6DO=Qj3WBfIW6wiMU23~Kh*hE73QZr|C)l*8#p#jU?OAJ}eFgW`2r7V{-U$9`^ z@}sYQ_KXuTbKh!e8!4`cD+gl5tcnQVxb&6^(kR4EaThGQxY5YvPjl>r#|S7Sv55%S z&3g6DdwIY$DB}Nm&*n@ld`wZRc9qw8@Z813pwP$y8aqNSb2x0bb-8H2IggUJxi@4%Dm_bLlH;J zU`T+#WsKS3IW-3kV1^3}c{SG?*EknXdKIHCN@=>`Z0?1ONQJA${s#74S9G(FNK4hZ zweE_xR{#+x!y~KRlfB>8qNX5)qwW^?_Q}z}?)z_O)N2j&yW2p&n~){Y5HCc4hO3@F zKULuDuyJW4sXJ5J=e78=Ez$lX)P4ea!v39$ks7qH*HdUbJCL8c$+wGHrKlO*vk8`% zWsyyR5r0q}h3Nct&gdq5R?|$zN8W3D_K2l_CNdkmwvnhyZ9EJ;n%{^qZTPHu5;f|{ z{t<9^I{Ff90aT_u^o_s{9izOwrW>t^V#}r%+3y1s>z8x%)x)ZYcNQ%*h+f6w;kI8JqZ`;J;>fYT z)IQDy$G9{d3w=@Cqjj8B#JjKgtXuf#5p9S2Hw4C|^A7mYaHhjgc8to!^Z8?iHLu}3 z(EGssE&40wkmq#+miv?xd6Hkx#BqdOZHGXA5jD5(28`z4LcFFc&hE$dBSLP51Jd1- zgv*MMKDm<8u0P1)N+s*OC>y$lr;t&cn_zDTy_HXohnyh*c8Zp3fN*Y#tq9SwxOrG} z?hfu<$;%x+n%k$qMj+1^{jIbSosY*Z0e%;PHu*d+^WPG7AOEpl-uX4Gf~kfW-QWCm zh@d0m&p*F+USOsMn4iX_#C)HXrS4z98fhWJZe`nQ_IfX3pGk5Y_02Hn`NL`2`7kq+ zN+07JHPuUk{pyBSYhA{ViSjbeG=_svFb>cH7)s&j=a_}}CQDz9Qbp}B5hbqsO}X8h&u;sUGO`Rff>zxX#UeXFNGTGz04|z0HD)-%|u6?p7&yr zRZMn}8^)nx^5rWQopK*L?C&?rgJD`jFl*O1cu2)JJEwO%dYH#|pO|EGLTDds7S7{Fo8@v@Z@#`=@Av@UY8`>G74{v$m%MAQr{Yut$u9QsYCzDk*mf%I- z`I`=D9fxvR-S&4gY50S2p9;<(YZCe%v^M%s!7$mXsVUMG8%h2(Vl9X8&Cm%SHkq}D zeodg2E@5KDm7K$may-KCRW}`9wJ>w^=uPww;qR))^7(aYANH1%qUNcRODdd_fG6QN zu{N`whnfzLi9{j^qbjS41mw#geR-+!5Ud< zgWS)7X&g~|Ww#=Sp?sMRPv4z{qOFt#R1O}v`aN{yb91!0Y5vPOZt4jF7cO`7X>Za$ z-1P9{qxA{+6jCzk1adaQAr(Jna)!NKo8mDTpMMqo(A{dn9ZF?Bd@~3NIL0X>|Fzq_ z9=hi^VFArQKDU{bs_gy1oW8xP=;YDq6kPMq@X)LKjzaJ~+XdPtH;EUbnJ_l0Re9XS zSz=vyG4=-2*|X#4h?`cq-8EX_CY@QVA*4P|?8Zms_>EfN7nc;a>$yu(?9W&AA)*US z+)@S>@eg?%0Bq?|9VSt1t$Mk?cPOq%&(1^kHpD1ar!r+`zzJ^2cb?(J221odm{FSB zh`wh^yT1MI&OPr2@5-a3Gfe=0p5ZVRqV*?ih5FO8hgXfNpMv^((~cRIFo~H=m6ox8 zDD#>rAH8|oG5O}o_N+JW__-K`oWF<{+oX_Lt^fCcTZ)T|;(fmh+^w4IgjaM$a3Z-g9z`Jou2CdttFO8rs7fVqm$bCY+a=yT(Tz?#Ds z+Vo?=MnCw}?Al04Tvy>r@`(J`mY49Jp55aV+5(Olw@wiUHxe3O`$zxpPzYC% z)l(>#MMx0)k+kB@7`hp~XPF^#Y5lGM>BVQAq~&Ty(M-2mwZ?1>%8teF^=W;Xfl+{X zSs0Dxw7RHhTvDhamq2w$5U#d+8WZ6jjabYQ)YkZD`!bDFR*2+m+@QA&ZJs0`uORo` z)VCM-?R_1u11s&g`MXV~MGG^E-r&>FkeVASZUjI%-hN~nL#|1tDy?#1-!Am6L6dI* z>A|_ZEI=RiE9c!GTYVvjOBmWDPV_>jJNQkC5dGi0kTP&lTQGU22bU{^(;6U}&4L5@ zNp?YB-%P^`MFX^EmS|2mZL}W$ktOb&PLo+1^p?W8N2-?@cvu=AMkGybR_3-Ch_4f6 zfla#xBURnDGu@4nE?{1XpL5wBOCU+F#(6U(!<;ymWpNwUiaVaWpyRn||IVcEI?h>) zL^g8e&Z5eP5ZQVMoh!;1%S*u5OOC-N);D(#lMddElUF;_eq833P_2!k;H#-Xw za~GYlIzA<7Ib|0 zb(i#T1)%=Cibu`eHU#CA6?S^dbmYrxVyFL@rPLoC{qrMdrFpW)R^#29 z;f{cIjwx$%Yr4WKqox3ubPc;mSNd3}pmP>+;p*>=oC&Z~7KQ-TnPm$B3n{c6LZolZ zaz@`i9b106&>2!)ohEw@@=A~(|`A*}!UF?cd2eMgEg15nA zGAkoF4iSk;1*-~F8ev;TvMKw8*1)!r?6(`Te!IIz6G?fsS^VDM5zlm+iIHg>dOAUR z9Xa9UboXbrv6x-jTkkh}%%T$oTPlFBPv`?z!&r-{Xo?V?sm(ne_k zInyza8DYXxCEYxSb3KcV>J)}FX%V*emDS_~049xIRy1z1n54meyH2 z*RfS?((qh%ns*?A5o9wJu3B0^1}7rKt!;O?I^14Ft8WRTUC#x)5s*I&V&P6$sNq_x(}8yfuu>1c>|Tws}j@>G#TJDHva(Y9lG{7KS)an zE*|0oKGzCfB8>&265KhGNL#thqoB^Jc;c?MCT%J8jrFJKwq|)dH*OZ$@2(KDHNwQq z%@dg8jifBKuAKcaxhsP^y}NAPZQ*%Z({YXoR(2PWy>+C4(0T%{E5kAX;fj$S$=`08 z($YzGYj|dsb`2ac1+gr$5>Ikor=@dh3Z7VHlvb_3LuK5b<)Dv47_IFX+{)5v_)+EU z#z;HsN~=QQV33Y3?J}OO>s7X&kYn8R2lS@eRJ- z5F|2PNHo{KlIu!!g<585?l=>a_d87UT}LDf3_$?a{iH0~O+tb}%QmiF>>-gbTP?fD z(Z{Z4>I^EU?PL3ZrWm#Jr~9|sI+kt4NzuXK;fJfU?sA(A!!#bQ27II%brNqR@H7r9lT!Pf`pspSUQ6sWX z36vQi`1Jn(7rK}*GCEDpPTIqDW^Ujbp43W8O$c+SgmuqP@~|VArU8_eo2d^ZTWzaD zB;t&*YMx_5P_>}aE5}OVQ0V?G^oQyXk=e&Mvt6FZp1aHW6#zA%J(Sfk_fTRjHP%1& z=i{(Fy}yuoeA8UGtJ*@5+0>FknESogW$8bMJVo7Jfh~T5Y_dJueC_R(oudT{a?yOl zE433`W;og=H5B8haP-0X1krANzr%bhXt1$X5m{cjR)XnGiW`W8hW0r*HGg)yePvfEPs02BIM z3}}m|;;7Fq7}8Wyh@wK}S|V9=Su-=0y1s0 zXS|L$U|8+y!Dbb4Dis|;MNbo6BMT=RUF`b>wWx}C45|)OD>rth)Puw9!H}ElsW(_JiCrS}cAOpt^B&`joPP7DYETsPcZYYz)=w?+yQZdYCY3vyc0Kt}7rATex z=A@8>jv4_Wss0iB_+S}b{2Kb+&v~`8jzxK1S?%7PYgr;pm8qBy7^kikTp4o}?&asZ z)Yg{LTwM0*V?n8mcJ}HC0+nW`05dhh8En2G2xH!c6*Lk{4@-nT z&Rl7NL2WhL{9|Xc+zM_E?$aS{ve?1dO>ppF7=)D=5?88+o*gL`ST^C?K&u>(-6ZhK zXK4`AIH74Hb)t0vT_nE`ekFKf?#}M%63)`*V-(A((sv1b<0^`q+H+ttA3QaA$v zqcFbt9M&-0Slww6BB4dMxyYA2!ZUqGOQ_&ReDGjpxZ4&>!?;G*Fvo8+iE-XUhzV6f zty+t$1H@NJ<5P+yvu;aC_P>;Jy$miaQKfVN#($L}oPehQNElF2_O{xsQH*H|kV|zJ zqdBVzof@Ps=};;+Dm1HNXu{C9NU!ndPY<7%ubVOAkl)lepOVOg*p0QJP+A73v2tcw&=Tb zfDv^o0|OTaFhJ9#tNbU10>F*qdY!DU^~fXJqbQTc%+fI~LX?owk&dCkvaSn6h1(wS zCg2+G%H8`$NfJ0wRRN;u6U%Zl3HWmV0J{=rLf+DAb8mNScXYUNliP}wcR(3J#{I2T zp!kp5h8nfxEj-X|Y}U6?faWW>*)3L#b%=Uen(0#6)7i%o5!p0x`=-%h1!;20`Y}xop>w!vadzJ*EvFq1tgHf*au>LmKB(ij_7Fg5FtUoo1b` zVh#b3G^&6cYFZs+(zK~H!z32>DGQx28101YjIlE`XF&y6imMJe&=5J`Barr1z{@0o z5gbU-iclBHauu(?3cxBrr5OS-E7s_>CsF=tfm+}ofo~$9l5owZxhgPPtYeC?q01}* z=^?b;_VFFmEcVk-n4h7PgOJNH_Hn^rY$UXjG=?Gz*_B?>$Xp`

}ytzps%W)I5G|H_bs~naJ{;c`QQ?`Xp%Vfh9z^a4j2t4%(3@UWxJiN73p-V zA83?3!&Kpxc{kekeUD(8Z;`tN=B~M=A*3US9?TZt@e21H&tSZ`nrpkcu3AUcOsJ%a zWNC>ti|OT`fFijxV`qta<6APhK3re_Q}sD2D*Ki zQ-#_1F6n*B8M9F^EqePZ1C&wY|wwReBp?zfkFJ+4m8{c5)Xb)o_Im{eg%yRaGjFLK+h zRp#9OeperyWM0`UIOzkHAGQi+tGDpf7+hAFX*_e~OkBB5fHv)#e)^tZ< zEUtENZno$Iuxp3{6$34QVXh?8&$eziQHEH%3d8!c8c_Y1fLU+h18j3V%9pcF^;?ny zzNS3uiic^h=v(i1weq7zn)fwy`|u=-cikUig)Vnl%ebTjD->y0NnI!LDxjq@$YNzY6z<+*d$mLJuYPX~^RmSpLqs|Pf~+Mg zs=RUs6Sb!>Q)%TkTeC>hE7_Za+A>C!Nu^UzhT*e}(Dj_Ulbjg)v1FbLd~WP ziaD(AT2p&_c~_O-8Z4zk{{R6qYK}S|%ozjs;Yx5u=i|*3moYNP?R*JasBRiq!z++9 z2I>TB;JIL>0qy=RxJSN6722!CDj4oqJ4Hz-rCUP-tAVKF%woMos|)Qmn>5n@RVtkJSu zOrnC`w`rq}(oNFd?rXVbQ4|jPL~&$6V;Jn!bNBPXX=T0q+bTz@J4knH%f%XIxVKKz zD>zk+Wecf-Hw{0#21k-h-KuNr*zGrMw`eVNBa+I>-WRyJiPlcO`w12n8dv(R+<9SS zO;&xgZ`=0mu(geo?DmXgKP423Ow7Orl$eZ~-n=xNxePr|VK&y=w9sj>M`>jRW+G>p z#-f2)+EUbJuft4efKf~1n+=up*SA*}ySPys+h4mbj*=Clk5Hut1Bs^s+h6%9md!T1 z3nq%eX3jWquf3iw^cX8~fPAH?gErMt?peEYOD}kS9=kp4}y>>*B7jtO|Iz{^|W5x*iCaRTAt9y zG@2MVsS6y4-;SLpP&iVkj>2uu+i`=(ulB2Z@{srJZ*CGdMUBZ0uP{=3>!+<)gH9Nl zJgpa7jisa(>lewyk+6>K<15t7!CBC16<>A>e?hLLa<tgdcUTxm zG*v)3txXwocZtV>j~fyI?X+dQb@^hB<|(dDyCfwX;RCU0iF)+lgak2mHSrk-d+}Fd#J2?D$X-@ z>pGdM&xfUO1$%Yzljj?dyq?}ca&4kizJf)!x6~BXCJf9a&`+lWO5nyy@F_l+&9hj? zE!D=~cYh9sw@bEoY|%i{NmedoI&)oFe#3?6Ue#f`J}q%+Z5{NM*DD8Mt)g3Ft~P}9 z$brmrpjH5{FI__wAVS-2;dNzmaV^rdfI`wwbdoB$EvAe@^8RSgt$E>-Nj$F0#$$pg zA{T8WY+mn6B!E#tTU6@qEjcUc^#c>NG?SIx;I+Tm_gj^=iUzq+6|9;V>0rW1g)37* zq*R)4IIMuTUQMz^u^a21pK-a|qKmzA6`Rj(BO;m^Rx)EW_ES*Ek)9^eU@e~8>EDvr zTJJ>fcD6Tiv@!hK2w3R=kg^iZEM#$!I!1Zd57@Bu`=^2!&5gCZHyd4>NkK5u%_2A= zNMwktls}56s}X9X8MLQ|TMM1bW`^qec6M1-+D3gcNk-EnN*FUB%pOa|w5}XGsm1lA zQ&>H;pv?gQPa@VQNZ&5zsWk&nR8nipo+~N3l3Z?{GkJ2GSp#skjgZ?46-#*+Eo*j$ zU(6K9jU(HMw0eA|5qU3=w)1VaZfS3}*h_719mT!L)?}0iohzk;j3dY~Y|eZ#!dHU3 zZw9^DBkk_@V)u2HQuckx)(sZxlxra!$C6DWJqQJP;d-C3rsH?#7W;HU($YB0%n|J_ z1WP=DTT3)n>bjheYf?TQcy=cuA=q}?_-$Kxw!X1j9_6GvRg%AOEUE!(mm!XXW&E>T zt465H1UjqDt~;C5Ui5G;baoJ zD>k;R5a|ofobc|$)Uw~h_6@tqE-vKj z$-FGWXm>W-BZ4yWKWsD1!~hV3TB~~JPs5%W=P9>;F7gp|U8;Cy+g(syT#9Q54IS0c zD>g=z)2g(?fDMJ8%$B)JhpWGF(T0^^bNt2OUs7>WCe?y1zR{foW;xlkm8U?7kmVt9 z+$4j*05M1t1TZ0363$6sc{{V*&vmO@v=w4mnpPv>RiFdY1sO+wyj(*w+s89C)1ymq zBuEzi0-)&AatBU={jQQ@_X>+{z_(!~C5?X(l3MN{CK^y5KQk^GR7@t*p zER7!Un@smtkW8DJ+oH9saizoweIn{^*a<0a%VZjyMQev?In}1?ad{q%^6l-et>h8B z&eBBD-6*4|1T88~b)|8gwOBUUy!XcE-R6&XkZuW}neN7Mt1Bxm3qIdUrAlfMhM}!a7E1&hhWWGXcS*V2$0Wye zyzFjwQ!$R>JHFPKgD#I6pWZyMO|uN!1DiBU{Ea_n6ccEY&A~I8jRXkojf*0F+%p<6Cvgt?uO_ z$7ch@qUJgp_g_HNp+b<%M>?E3d@Zu>o58qUsW(-cO}MH-x4^xbL~$rkOmb=tb>~pW z+l46w-MpK~E@bT3{KdueN`h|iv`Bk}sD!iBD<~R>Q(AELsubPF&%DOpb)Rb756{JC zAVc1Trnh8o#F~%_ve%e6Qd78JcKZ)1yq@O&0QH{zi8Y48R18)!wN`aNbZ8AqC?Jti z!nmmuX7Edyt1{J zTy2)kb17$*X{E1oK_qJJDRwNOx@kef6@vCpwCp>R%y&DxvuU<8i6-B+$qGWY%1t{Z zSgxkkz?{8=;%5}HEp9x4Zf2NVyjGVB+O@XOJE+QNW-8Sgobo?rEGwJ7<-1#6+3j%J z-rrowNw2qcRaMTz!rM=oVwVpPtX#}+`Q=_P5!oJ)xt*rOm+REv78(qFTX*ZZ-7dKIA zmPpA!6I5E;K&3wh13B{j#{U3hg4*csHdYqKi7am;vUi@Xso0H2R+?rr;gG>ZA(vs= zcT0P#=iM!XpU<+2CY-ENML_hEQUumd8fDKc0AGn-Bo?oG96O1+RA-V2%vS2G^0uIA z1amxwtlAlg!9z>WBJw@j18=d&&`T8N)>M_^fpwWQOC1R(rB0&CGUbIS*uGoc0v_nj z*V9K-A1gzeB@9vj08N}%*WHa7*cJzdM*U9TZIDi-sIw`6%JiWwznR<8cxqhmVHCf} zJWp@(3zVP8ZGKP3V2BxQrkl29l($Mss9C#b_;my8g@edDt)pk$Adb!=*A`aq+p0K% z-ra!iEJ}(Vx>KsUxKoAwX-^=xtY-mNY9u^;1yu}&2#m@88^Eg#o3>FxO0YgnMqg@|5 zR|Zb4HYsZyQ(Xp-nH6P*cO*vYz#f$}eKp96WrvjEN%Gt1DR4FH=5NVR8ntewsUcMRa7U_+K<+F+V zPb4~lib%gL^&XKTav2^NNw6N(x9vVG^H%-kx!z^&tWtzlc}UVt5GbG&t|rsMUGQH? zx5D=Ee9iu-$^|7ujLAah;9h5k49*d>drMetWFoXsM;tlGr;;m4 za10T`BPx0sPN3x1T9A2zo+?5rJCBe`tk%l1Gy_e|u&;kpH5a$=t05Uzh`>u0-qOc! zrbyBkrlyU480srRYHDj-#v+tQbp7jZ%SI;QKv2ek62B7@!nh)V*jQV4XSccn>E+C= z94L*A2-MUKPi7qu)-9`Vwq=qVWe%SM0hsrDaXCCRlKM7DWC!x$8Mmqa8jf|t!4luJ za=>IL6rb(I{1hnK6)ns+R+5Qy7L-Y_MUZAajmru^*T=Rv zHr=3G+fLG37I{ICg4L0W5GV#!IboGSc`A#tir>>2pGLyMpor=6R8^?^>r-4Y73;_) zUCEMf=#m%{z>oW7gr@%hJpv`rOtqB=hk*mo;T$2|_w@OZZw{$uDgvVXD__}K;VS}s ze%|!EU0%haQbNR|JuC0vNyWrflrkH6r|DA`XZKU>z*s>XNYm;GM`lr6i6?@V`!I~X z-g)N=6R|y1{5z2d3 z(YB{Dnzo~v1&PEhm%FpvXDev`0GR3$MgxTpw~j{@6GTU8HMe}C2S*i*E>0W*1{q}H z!YQJ&Q+aL-P0-0V7S-&}@4!U6=Z#wapIyEZ9a^y}wnC<*9az$yl*5o@cZhA9mBpPW zw^0x+5oR<~ry?|-qfd1(w%-ZC>v+b^9-u^>!b>BEWzc<;Kfe(zI~#4#*ji4OXw32| znN+z1l1Bn)D^6H;+EO*Ty=$p~TT>)f?p8-2oh+k*uc^YEC|==paBZS%eN9jrN&rrt zBvA9hz(;Xq9rSRPxMo0Vs}Kqb^H%h)JOzP`1Tra7r4Eoj!IdzKJMH$eTlUb=hC@*; zm!=v(N#Yw7+zPw4(Pg+Q)_p8!3fAv<_mDYfEg2M1%kIVCH`=#* zs|!egV=cWZB7DdmirlbR4X!>@afL49eO=@MR=*FZ%iD!D8CLfgCxYo=jzXya0QG5_ zxZ%SU1QxsH=#f>l$je1?qJ@VFk%lS9%cQpJkai=czTZ*o!$}?ZXro|c)7p^8KvP4N zDVG}HR0nT&E&Z&}rMk@`1_o6sBwbmGtMU6V#X}zW*1zSZl!?}wRmPS+!-OPeTcl;~ zY7}mM+y{`8D@h_gkSN)($kLbzRP&9h!v4|i30~}q2yjaY(+lr^=#=?=vR8SiK02MLM zylpjb$b3u4CfpxxhR#>LP+PLA#TSdz^2KYd!ZzO&1;w4kq>@|QA&O|tB#p%gKI4f} zBmurAG~l=cacMBlfRX4!AGjPmXTakLqQAa?EOz%YB~SF!ni5Y6bHkd_mSNhynAmJ7 z<51q+?a@m#h1%v>;S#)()aX&GhqE15S%);X?7eu0(q9n2NjHthX|)~VdoU=VH93+i zL5ReWc($ExpG!P>w(phNAN0)?HvPE)jTrGFB1L}OPS-6o*9v6*6?L{KeZn5yXDn0UT>-sK`wkwI1<+CjD}5*Kf2tnzZ*hQ{96j4tp=neASQ4 zd{q?J+NW-(MK$|)X~N~V0SD`UGdJor?a=7&c64_2eky)dc>8I`4j8{Q{R{mw2l}u7 z0J;AFGQFy5{;y^9YWaNYr_z`hBjR%|DNxDij@a-}#NJ^lz5aPxGD48n}+;jd}3n zqbw>%_x}Kd<=~iu@XX>1yiuYo@vSVZz~F-M>uNxBQpR{KtKMVw$V)3V%Mj zQ&m5|1rs3lKlQ)NZr?AX^v{}oUorh(ZjD_v)A3g-@XrhVmHzGD^ghM^0M7j1$mwq9 z&HUf=vZrdlmtW!2o-LhH2k6?@^ncdBM%2GG^SbnQ>D5hLRQ0BKd$=nZOZv{bp5~9}XwUxuqRPLw6ghhP{{XA+o3s5-PtWKdDf3#pnrr<0>Bm-e z#c)w=+B=^m2kDyrXG7`L+|k|Yrw+axIbv!50J)XN`lIEg)vxDjmG0=%r$Db`@ae67 zFS804&kWmsz4|=b`=6|LR=T@=%@zEtzr6xj>f0cO&Tk!qqR=1qX!O*z*HD0{!_{{T9lqxZXA#?ktYuj|*Rx83~D`Too*3~Ya2{{T)) z{-yakcTdez<~8x<^8FgCU0-EzxGLXg{af+(ztg?d?R@_L%l33s*R%5{{Rjy zVKB!30OdbYf1TCxdOGW?O?mu195mDUYfL(5yo2>WnoiGuOPUUC=A@nsjQ@)Bgac{EB~rKU@_l8}*NreSb0fzO(Z>d!H>|{{WHh zbm-$x#fcGBZ}rFP_MPvT(ck|7G4p!0S6+1Grj+|VxFPJfc^A!gZN5|GyZxW~`a6B? zAO8Rg-2AG46>{~%q7eN-{{Tn)n|`aO^`DS$(==%Ly&b&tcE2jRzo$-B(}}nf$bS?4 zGyOFu=v|M{J8k-x%xmuV^&MUA{(5UqgYCkKS$6N4`KUfuwfbh0`iIYd>vdG-bn z&wgjgevhZ+{!*PE(fqpTr^B6aOe>I^&&hwOc5jsZZ%;?fY18uh>N{Hdzn@KC)a~-& zopA0BWzbXoM_>KhN671L-^%=b%IDhoZ_VMWUpjHag>a|ufBj~6{{Z~n)%r(qKTrKf zwc7b!-gS5xPj$8*|p&Y9CHo~rFBmZq1n6%nC@EGn9$twoeuS_5v4 zLaL4pk+C3`pd@5>meW$Pg>%X!fson=ynCV}NiGLVy601lS>a zXZHL9?+?%A`+T3Zp7nXLw&IXGSf2Yo*?|sv_!zs=zRvdxl@y5v60a?2|K=q%%GQK( z#}f~+ig}jp{JeG-cb%z!sUpUK+=J%XhbHX3coj+|hf4BQ6U)vNd|MuSbuyB@zTIkT zba#qJ);61YhfVtU`-`$^{raU_;(37lUI&aZ@Zxst=&btLbM$c!z2QrJT{!??vL6W8 zb0j?#w%uC8sz)Vgr>41S(hJs=&O%Aau<^+T@tJ1Yy9He z-erIhuUO##{qyk=xh@Zj0`flTWTj5d&0uM3;w=zV*6_l>_$vAvm5XNAfKR{V6+5y} z{TsSnJIH&!e6m#UacUEV)H9=%4^)i5g_j9$Bq7-OdY2}HM-lAO=^bt)n6bL3Wo$ov z!Aq*K>>#KUdZ%d%40Jf-5|=%S`^`MA7T9*KbBsoNRa~}_fL)?9RyHVc?jl2qngu5s63r ze#up{h`_Dr;ZxOqP0p_JxUQmEwvDaJC!UZBZ$Yvdy?GRLYE}jfi?FCWzr~k*;X2*j zgwcsfz!b{IQI!*yLs9&oT`Qmn`nC%0UA%ew&442@graL*Q&_lFUDarF8wZ4U#z!mo zEYP3AHHaix-IEd^4srzn8nFmwr#)m8&!8o`vUXtRQAYYU#I0p*Y~^lQw%DA9Ptm-O z2rbCHX7l{xSo4XsDl}^y0hYpZHPwW;;0NjDX6&|N#~g8r>L$QQ_svPG_-3%(NMbxQTX+YbsO zD3(5sn~lq;z^2Pr zq?0Az$H`Vma%~^?lAAOCwE)JUR$mU{CEc?dWv9f?8v@H-K6RwkRb-e&iR22Sn!yv8 zpEv+Mp?732;0=M0y(_<~Q9Y0Tgq%XPSUB*9ZDqqI&eW_6J`E@$lpWv+pHHz|U!#jTLHdZ0f%9`Su# z?HWv?~`zv6XT?tQv4% zPv7L;nmzLG6JY{PD=t#i3S;IFNJgKw8M+I1`w))m1H4j=O4nVz78JB?P%e!ra<82# zXOet_7ufF;anSMJd{_@Sn3L=JMB&(Y%H)&-hL5mM23gz=O{u6 zA3VgUK;Q0UCyNIR(6nxAl@S164|X5L68{H(=s@In4YJp)U&EG7kguECZZ!AGUO#kp zMGf9%^8#gGR%sV5!}J>wtCGt1UKKMdxJw-XrWh*glbntO~{6rQ3gfBO42WwKh0E-%gX>(2ep8)jE%?6sJ8X|LNbN-MSwRQ5mtE9) zmupOxgFVUD-UU2&*tVSU0x#)UTm?0ft{*TVgcNOImB+<04}| zf8oT-^ZE-shgP>j3g6j;Y*md}Ocn7Bef8U&{ge3_DV9((RTCjStdVjJ1KU2{-9rQF zls2O+I?Gs^-mT+eUj&6IN~YNPRC-I>XDz|_Lgz2kg=)%Xb~e+znD28s{GFBlC`rjk zAS2dGYI;qwTc$8vp{1(arF&FKeta-LDVJhv2&n$(#`9ynZgNJN9%(%4h(KL+ z+k062E|HU#s%%5_jDO*FwXRyq^(4&X-;<78IdeNBX_>)ga(>Cy$KOoPsMc18E2DA} zxiS+}m3K9?Z*(OoFCzP^915_`Ja{Dil`;)nmR5o{#LK}qU}7;jf3xlgE!Dc`lvtz_ z`Da^`PrvlJxmGVN32O-K7Pa~ue0iB1x)vm9-xr`z5?6!OyAqgUb=?(qkElU7mikwo z#eoFy*OX{(@E{l8&yjT4eu7@x8P)$xD4sx*O~wg@hLztd6RUU9M-sxR?n~V-0KfO^ z$a1g*jY}NKI#m&HRF-(1S-5@MUU-OSK_u;WS|v*TIT_pZ5}Q6!Uo;`Au`|j)P}` z)Xs{@R;i8!(q0$VkhP&5Eqt@tUb< ztc^*2X_kfP%tDJ(CbIlkQ@nx4@^Igt_^_>X|A-e-&#$~xI61FBMIWC$wg;>ueOEQ% z8Fw31k1J$Lv$6YH@7h!1mn&w?1{PqB{Uq!ueo=*rham>pbS^^FQ5=<$g2VQPP{r%Y zgceH`#s%XIQn9!@>S7gfg&DG~4E)ebI=+4Y&umRzNR=q>tyL%8dYQ{ib(vU=RU zIm#&Gm;nNU7qYMR#QwU6QMnxH7+D(0IZQD?rsQi`y6ZXa@Y&)htzfSBsU9*Vu~Zkb z`?|;>UeZb7jTQl$J`t}?jh83TN8l;fql8zpu$YIbZZRhkJRBExc~)`zb^QhGWf#BG zKxf&jA4_@aY;EMB^J6nbKEGej@RA5Wy+Eu(aczVXKpLMh^!U-yA2r0D4fxF*`XNp1 zKD67?w^;1Nk_r`;j0zk3+YkRE{bshXo~&gSEKYTsf62XC#^0QBCKAE}uxmFhS^>P^ z??S;6-GnaI#S|fX#yI)(PACLp!LD~#kFzoi|8*j$ldZn$203aIdy$J) z?OxQ&ByE=-8h;YrdMa*uhJ8^*B?_J4$lQ9c^525$;K2>%Tqkg>Hr`0~oMtb}ktegX zwARdVBlO}j)V;}t_Fv%b7#&cX3!8N{>#5!5*vN?Uf8m_GyxC~)qQvxd=C}gEU!lx1 zdT4T%HCeE`39ok-&Du7RaE8;BDcL9O;jDQ{p+R9e4tapIa`T&pf9tsQJexof Date: Sun, 14 Sep 2014 19:35:10 -0400 Subject: [PATCH 07/16] closes #2084 --- src/middleware/index.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/middleware/index.js b/src/middleware/index.js index 5ea711b46c..6897e34052 100644 --- a/src/middleware/index.js +++ b/src/middleware/index.js @@ -64,7 +64,15 @@ function routeCurrentTheme(app, themeId, themesData) { } // Theme's templates path - nconf.set('theme_templates_path', themeObj.templates ? path.join(themesPath, themeObj.id, themeObj.templates) : nconf.get('base_templates_path')); + var themePath = nconf.get('base_templates_path'), + fallback = path.join(themesPath, themeObj.id, 'templates'); + if (themeObj.templates) { + themePath = path.join(themesPath, themeObj.id, themeObj.templates); + } else if (fs.existsSync(fallback)) { + themePath = fallback; + } + + nconf.set('theme_templates_path', themePath); } module.exports = function(app, data) { From 51cefb00d2b1d6b6ef410da92beb80b65226e7a4 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Fri, 5 Sep 2014 14:14:41 -0400 Subject: [PATCH 08/16] add support to set parentCid to 0 --- public/src/forum/admin/categories.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/public/src/forum/admin/categories.js b/public/src/forum/admin/categories.js index c7851c1e7e..37a551ffef 100644 --- a/public/src/forum/admin/categories.js +++ b/public/src/forum/admin/categories.js @@ -239,6 +239,21 @@ define('forum/admin/categories', ['uploader', 'forum/admin/iconSelect'], functio modal.find('select').val($(this).attr('data-parentCid')); modal.attr('data-cid', cid).modal(); }); + + $('button[data-action="removeParent"]').on('click', function() { + var cid = $(this).parents('[data-cid]').attr('data-cid'); + var payload= {}; + payload[cid] = { + parentCid: 0 + }; + socket.emit('admin.categories.update', payload, function(err) { + if (err) { + return app.alertError(err.message); + } + ajaxify.go('admin/categories/active'); + }); + }); + $('#setParent [data-cid]').on('click', function() { var modalEl = $('#setParent'), parentCid = $(this).attr('data-cid'), From d22fe4ad1e47814baac2eb000ab1ebcaa6421297 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Sun, 14 Sep 2014 21:25:01 -0400 Subject: [PATCH 09/16] removing disabled categories from being listed as children, #2080 --- src/categories.js | 3 ++- src/categories/update.js | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/categories.js b/src/categories.js index 8043401830..e33d8a7aa3 100644 --- a/src/categories.js +++ b/src/categories.js @@ -402,9 +402,10 @@ var db = require('./database'), Categories.getCategoriesData(cids, next); }, function (categories, next) { + // Filter categories to isolate children, and remove disabled categories async.map(cids, function(cid, next) { next(null, categories.filter(function(category) { - return parseInt(category.parentCid, 10) === parseInt(cid, 10); + return parseInt(category.parentCid, 10) === parseInt(cid, 10) && !category.disabled; })); }, next); } diff --git a/src/categories/update.js b/src/categories/update.js index fa04d99deb..002628d723 100644 --- a/src/categories/update.js +++ b/src/categories/update.js @@ -13,7 +13,6 @@ module.exports = function(Categories) { function updateCategory(cid, next) { var category = modified[cid]; var fields = Object.keys(category); - console.log('updating', cid, 'fields:', fields); async.each(fields, function(key, next) { updateCategoryField(cid, key, category[key], next); From 9cba8d7ecb94d44a79e4d85bf306a70cb879c8d4 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 15 Sep 2014 08:35:10 -0400 Subject: [PATCH 10/16] latest translations and fallbacks, closes #2085" --- public/language/ar/category.json | 3 +- public/language/ar/error.json | 8 ++++- public/language/ar/notifications.json | 9 +++-- public/language/ar/recent.json | 1 + public/language/ar/search.json | 3 +- public/language/ar/user.json | 6 +++- public/language/cs/category.json | 3 +- public/language/cs/error.json | 8 ++++- public/language/cs/notifications.json | 9 +++-- public/language/cs/recent.json | 1 + public/language/cs/search.json | 3 +- public/language/cs/user.json | 6 +++- public/language/de/category.json | 3 +- public/language/de/error.json | 8 ++++- public/language/de/notifications.json | 9 +++-- public/language/de/pages.json | 2 +- public/language/de/recent.json | 1 + public/language/de/search.json | 3 +- public/language/de/topic.json | 2 +- public/language/de/user.json | 6 +++- public/language/en@pirate/category.json | 3 +- public/language/en@pirate/error.json | 8 ++++- public/language/en@pirate/notifications.json | 9 +++-- public/language/en@pirate/recent.json | 1 + public/language/en@pirate/search.json | 3 +- public/language/en@pirate/user.json | 6 +++- public/language/en_US/category.json | 3 +- public/language/en_US/error.json | 8 ++++- public/language/en_US/notifications.json | 9 +++-- public/language/en_US/recent.json | 1 + public/language/en_US/search.json | 3 +- public/language/en_US/user.json | 6 +++- public/language/es/category.json | 3 +- public/language/es/email.json | 36 ++++++++++---------- public/language/es/error.json | 10 ++++-- public/language/es/groups.json | 10 +++--- public/language/es/notifications.json | 15 ++++---- public/language/es/pages.json | 2 +- public/language/es/recent.json | 1 + public/language/es/search.json | 3 +- public/language/es/topic.json | 2 +- public/language/es/user.json | 6 +++- public/language/et/category.json | 3 +- public/language/et/error.json | 8 ++++- public/language/et/notifications.json | 9 +++-- public/language/et/recent.json | 1 + public/language/et/search.json | 3 +- public/language/et/user.json | 6 +++- public/language/fa_IR/category.json | 3 +- public/language/fa_IR/error.json | 8 ++++- public/language/fa_IR/notifications.json | 9 +++-- public/language/fa_IR/recent.json | 1 + public/language/fa_IR/search.json | 3 +- public/language/fa_IR/user.json | 6 +++- public/language/fi/category.json | 3 +- public/language/fi/error.json | 8 ++++- public/language/fi/notifications.json | 9 +++-- public/language/fi/recent.json | 1 + public/language/fi/search.json | 3 +- public/language/fi/user.json | 6 +++- public/language/fr/category.json | 3 +- public/language/fr/error.json | 8 ++++- public/language/fr/notifications.json | 9 +++-- public/language/fr/recent.json | 1 + public/language/fr/search.json | 3 +- public/language/fr/user.json | 6 +++- public/language/he/category.json | 3 +- public/language/he/error.json | 8 ++++- public/language/he/notifications.json | 9 +++-- public/language/he/recent.json | 1 + public/language/he/search.json | 3 +- public/language/he/user.json | 6 +++- public/language/hu/category.json | 3 +- public/language/hu/error.json | 8 ++++- public/language/hu/notifications.json | 9 +++-- public/language/hu/recent.json | 1 + public/language/hu/search.json | 3 +- public/language/hu/user.json | 6 +++- public/language/it/category.json | 3 +- public/language/it/error.json | 8 ++++- public/language/it/notifications.json | 9 +++-- public/language/it/recent.json | 1 + public/language/it/search.json | 3 +- public/language/it/user.json | 6 +++- public/language/ja/category.json | 3 +- public/language/ja/error.json | 8 ++++- public/language/ja/notifications.json | 9 +++-- public/language/ja/recent.json | 1 + public/language/ja/search.json | 3 +- public/language/ja/user.json | 6 +++- public/language/ko/category.json | 3 +- public/language/ko/error.json | 8 ++++- public/language/ko/notifications.json | 9 +++-- public/language/ko/recent.json | 1 + public/language/ko/search.json | 3 +- public/language/ko/user.json | 6 +++- public/language/lt/category.json | 3 +- public/language/lt/error.json | 8 ++++- public/language/lt/notifications.json | 9 +++-- public/language/lt/recent.json | 1 + public/language/lt/search.json | 3 +- public/language/lt/user.json | 6 +++- public/language/ms/category.json | 3 +- public/language/ms/error.json | 8 ++++- public/language/ms/notifications.json | 9 +++-- public/language/ms/recent.json | 1 + public/language/ms/search.json | 3 +- public/language/ms/user.json | 6 +++- public/language/nb/category.json | 3 +- public/language/nb/error.json | 8 ++++- public/language/nb/notifications.json | 9 +++-- public/language/nb/recent.json | 1 + public/language/nb/search.json | 3 +- public/language/nb/user.json | 6 +++- public/language/nl/category.json | 3 +- public/language/nl/email.json | 2 +- public/language/nl/error.json | 10 ++++-- public/language/nl/global.json | 8 ++--- public/language/nl/login.json | 2 +- public/language/nl/notifications.json | 9 +++-- public/language/nl/recent.json | 1 + public/language/nl/search.json | 3 +- public/language/nl/topic.json | 20 +++++------ public/language/nl/user.json | 6 +++- public/language/pl/category.json | 3 +- public/language/pl/email.json | 36 ++++++++++---------- public/language/pl/error.json | 10 ++++-- public/language/pl/global.json | 2 +- public/language/pl/groups.json | 10 +++--- public/language/pl/modules.json | 2 +- public/language/pl/notifications.json | 15 ++++---- public/language/pl/pages.json | 2 +- public/language/pl/recent.json | 3 +- public/language/pl/search.json | 3 +- public/language/pl/tags.json | 8 ++--- public/language/pl/topic.json | 20 +++++------ public/language/pl/user.json | 10 ++++-- public/language/pl/users.json | 4 +-- public/language/pt_BR/category.json | 3 +- public/language/pt_BR/error.json | 8 ++++- public/language/pt_BR/notifications.json | 9 +++-- public/language/pt_BR/pages.json | 2 +- public/language/pt_BR/recent.json | 1 + public/language/pt_BR/search.json | 3 +- public/language/pt_BR/topic.json | 2 +- public/language/pt_BR/user.json | 6 +++- public/language/ro/category.json | 3 +- public/language/ro/error.json | 8 ++++- public/language/ro/notifications.json | 9 +++-- public/language/ro/recent.json | 1 + public/language/ro/search.json | 3 +- public/language/ro/topic.json | 4 +-- public/language/ro/user.json | 6 +++- public/language/ru/category.json | 3 +- public/language/ru/error.json | 8 ++++- public/language/ru/notifications.json | 9 +++-- public/language/ru/recent.json | 1 + public/language/ru/search.json | 3 +- public/language/ru/user.json | 6 +++- public/language/sc/category.json | 3 +- public/language/sc/error.json | 8 ++++- public/language/sc/notifications.json | 9 +++-- public/language/sc/recent.json | 1 + public/language/sc/search.json | 3 +- public/language/sc/user.json | 6 +++- public/language/sk/category.json | 3 +- public/language/sk/error.json | 8 ++++- public/language/sk/notifications.json | 9 +++-- public/language/sk/recent.json | 1 + public/language/sk/search.json | 3 +- public/language/sk/user.json | 6 +++- public/language/sv/category.json | 3 +- public/language/sv/error.json | 8 ++++- public/language/sv/notifications.json | 9 +++-- public/language/sv/recent.json | 1 + public/language/sv/search.json | 3 +- public/language/sv/user.json | 6 +++- public/language/th/category.json | 3 +- public/language/th/error.json | 8 ++++- public/language/th/notifications.json | 9 +++-- public/language/th/recent.json | 1 + public/language/th/search.json | 3 +- public/language/th/user.json | 6 +++- public/language/tr/category.json | 3 +- public/language/tr/error.json | 8 ++++- public/language/tr/notifications.json | 9 +++-- public/language/tr/recent.json | 1 + public/language/tr/search.json | 3 +- public/language/tr/user.json | 6 +++- public/language/vi/category.json | 3 +- public/language/vi/error.json | 8 ++++- public/language/vi/notifications.json | 9 +++-- public/language/vi/recent.json | 1 + public/language/vi/search.json | 3 +- public/language/vi/user.json | 6 +++- public/language/zh_CN/category.json | 3 +- public/language/zh_CN/error.json | 8 ++++- public/language/zh_CN/notifications.json | 9 +++-- public/language/zh_CN/pages.json | 2 +- public/language/zh_CN/recent.json | 1 + public/language/zh_CN/search.json | 3 +- public/language/zh_CN/topic.json | 2 +- public/language/zh_CN/user.json | 6 +++- public/language/zh_TW/category.json | 3 +- public/language/zh_TW/error.json | 8 ++++- public/language/zh_TW/notifications.json | 9 +++-- public/language/zh_TW/recent.json | 1 + public/language/zh_TW/search.json | 3 +- public/language/zh_TW/user.json | 6 +++- 209 files changed, 816 insertions(+), 320 deletions(-) diff --git a/public/language/ar/category.json b/public/language/ar/category.json index 27f20b6d25..7d62f59e6f 100644 --- a/public/language/ar/category.json +++ b/public/language/ar/category.json @@ -3,5 +3,6 @@ "no_topics": "لا توجد مواضيع في هذه الفئةلماذا لا تحاول نشر موضوع؟
", "browsing": "تصفح", "no_replies": "لم يرد أحد", - "share_this_category": "انشر هذه الفئة" + "share_this_category": "انشر هذه الفئة", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ar/error.json b/public/language/ar/error.json index df25651826..feb589fd8f 100644 --- a/public/language/ar/error.json +++ b/public/language/ar/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "كلمة السر غير مقبولة", + "invalid-username-or-password": "Please specify both a username and password", "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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "المستخدم محظور", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "مشكلة في الرفع: 1%", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/ar/notifications.json b/public/language/ar/notifications.json index 32d6b62dcf..eec61f2062 100644 --- a/public/language/ar/notifications.json +++ b/public/language/ar/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/ar/recent.json b/public/language/ar/recent.json index fa2a081df6..866d0e28fc 100644 --- a/public/language/ar/recent.json +++ b/public/language/ar/recent.json @@ -4,5 +4,6 @@ "week": "أسبوع", "month": "شهر", "year": "Year", + "alltime": "All Time", "no_recent_topics": "There are no recent topics." } \ No newline at end of file diff --git a/public/language/ar/search.json b/public/language/ar/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/ar/search.json +++ b/public/language/ar/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ar/user.json b/public/language/ar/user.json index 3ec0b2df33..a1aa9dc80f 100644 --- a/public/language/ar/user.json +++ b/public/language/ar/user.json @@ -4,6 +4,8 @@ "username": "إسم المستخدم", "email": "البريد الإلكتروني", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "الاسم الكامل", "website": "الموقع الإلكتروني", "location": "موقع", @@ -61,5 +63,7 @@ "posts_per_page": "Posts per Page", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/cs/category.json b/public/language/cs/category.json index fcaf82c582..0c5e3af859 100644 --- a/public/language/cs/category.json +++ b/public/language/cs/category.json @@ -3,5 +3,6 @@ "no_topics": "V této kategorii zatím nejsou žádné příspěvky.
Můžeš být první!", "browsing": "prohlíží", "no_replies": "Nikdo ještě neodpověděl", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/cs/error.json b/public/language/cs/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/cs/error.json +++ b/public/language/cs/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/cs/notifications.json b/public/language/cs/notifications.json index e315bfd6c0..8a77183b5e 100644 --- a/public/language/cs/notifications.json +++ b/public/language/cs/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/cs/recent.json b/public/language/cs/recent.json index 34933d6d13..d769997c6f 100644 --- a/public/language/cs/recent.json +++ b/public/language/cs/recent.json @@ -4,5 +4,6 @@ "week": "Týden", "month": "Měsíc", "year": "Year", + "alltime": "All Time", "no_recent_topics": "There are no recent topics." } \ No newline at end of file diff --git a/public/language/cs/search.json b/public/language/cs/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/cs/search.json +++ b/public/language/cs/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/cs/user.json b/public/language/cs/user.json index 6d2bba05e5..13be6ba018 100644 --- a/public/language/cs/user.json +++ b/public/language/cs/user.json @@ -4,6 +4,8 @@ "username": "Uživatelské jméno", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Jméno a příjmení", "website": "Webové stránky", "location": "Poloha", @@ -61,5 +63,7 @@ "posts_per_page": "Posts per Page", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/de/category.json b/public/language/de/category.json index df8b9796ef..185540948a 100644 --- a/public/language/de/category.json +++ b/public/language/de/category.json @@ -3,5 +3,6 @@ "no_topics": "Es gibt noch keine Themen in dieser Kategorie.
Warum beginnst du nicht das erste?", "browsing": "Aktiv", "no_replies": "Niemand hat geantwortet", - "share_this_category": "Teile diese Kategorie" + "share_this_category": "Teile diese Kategorie", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/de/error.json b/public/language/de/error.json index 73e0f64c0e..4217b44a31 100644 --- a/public/language/de/error.json +++ b/public/language/de/error.json @@ -12,11 +12,13 @@ "invalid-title": "Ungültiger Titel", "invalid-user-data": "Ungültige Benutzerdaten", "invalid-password": "Ungültiges Passwort", + "invalid-username-or-password": "Please specify both a username and password", "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.", "username-too-short": "Benutzername ist zu kurz", + "username-too-long": "Username too long", "user-banned": "Der Benutzer ist gesperrt", "no-category": "Die Kategorie existiert nicht", "no-topic": "Das Thema existiert nicht", @@ -52,5 +54,9 @@ "upload-error": "Upload-Fehler: %1", "signature-too-long": "Die Signatur darf maximal %1 Zeichen enthalten!", "cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!", - "not-enough-reputation-to-downvote": "Deine Reputation ist zu niedrig, um diesen Beitrag negativ zu bewerten." + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Deine Reputation ist zu niedrig, um diesen Beitrag negativ zu bewerten.", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/de/notifications.json b/public/language/de/notifications.json index 295796f5d6..a12ad1694c 100644 --- a/public/language/de/notifications.json +++ b/public/language/de/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Neue Benachrichtigung", "you_have_unread_notifications": "Du hast ungelesene Benachrichtigungen.", "new_message_from": "Neue Nachricht von %1", - "upvoted_your_post": "%1 hat deinen Beitrag positiv bewertet.", - "favourited_your_post": "%1 favorisiert deinen Beitrag.", - "user_flagged_post": "%1 hat einen Beitrag markiert.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 hat auf %2 geantwortet.", "user_mentioned_you_in": "%1 erwähnte dich in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "E-Mail bestätigt", "email-confirmed-message": "Vielen Dank für Ihre E-Mail-Validierung. Ihr Konto ist nun vollständig aktiviert.", "email-confirm-error": "Es ist ein Fehler aufgetreten ...", diff --git a/public/language/de/pages.json b/public/language/de/pages.json index c49854a2a4..2df893a878 100644 --- a/public/language/de/pages.json +++ b/public/language/de/pages.json @@ -5,7 +5,7 @@ "recent": "Neueste Themen", "users": "Registrierte User", "notifications": "Benachrichtigungen", - "tags": "Topics tagged under \"%1\"", + "tags": "Themen markiert unter \"%1\"", "user.edit": "Bearbeite \"%1\"", "user.following": "Nutzer, die %1 folgt", "user.followers": "Nutzer, die %1 folgen", diff --git a/public/language/de/recent.json b/public/language/de/recent.json index b428875786..7e5cc47101 100644 --- a/public/language/de/recent.json +++ b/public/language/de/recent.json @@ -4,5 +4,6 @@ "week": "Woche", "month": "Monat", "year": "Jahr", + "alltime": "All Time", "no_recent_topics": "Es gibt keine aktuellen Themen." } \ No newline at end of file diff --git a/public/language/de/search.json b/public/language/de/search.json index 47ca0be16b..7176039ead 100644 --- a/public/language/de/search.json +++ b/public/language/de/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 Ergebniss(e) stimmen mit \"%2\" überein, (%3 Sekunden)" + "results_matching": "%1 Ergebniss(e) stimmen mit \"%2\" überein, (%3 Sekunden)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/de/topic.json b/public/language/de/topic.json index 85edcd53c7..c3642ea0bd 100644 --- a/public/language/de/topic.json +++ b/public/language/de/topic.json @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 weitere(r) Nutzer und %2 Gäste", "more_users": "%1 weitere(r) Nutzer", "more_guests": "%1 weitere Gäste", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 und %2 andere", "sort_by": "Sortieren nach", "oldest_to_newest": "Älteste zuerst", "newest_to_oldest": "Neuster zuerst", diff --git a/public/language/de/user.json b/public/language/de/user.json index 524a2ae08b..c264b87190 100644 --- a/public/language/de/user.json +++ b/public/language/de/user.json @@ -4,6 +4,8 @@ "username": "Nutzername", "email": "E-Mail", "confirm_email": "E-Mail bestätigen", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Kompletter Name", "website": "Homepage", "location": "Wohnort", @@ -61,5 +63,7 @@ "posts_per_page": "Beiträge pro Seite", "notification_sounds": "Ton abspielen, wenn ich eine Benachrichtigung erhalte.", "browsing": "Browser Einstellungen", - "open_links_in_new_tab": "Externe Links in neuem Tab öffnen?" + "open_links_in_new_tab": "Externe Links in neuem Tab öffnen?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/en@pirate/category.json b/public/language/en@pirate/category.json index 44e19baa01..74b946d216 100644 --- a/public/language/en@pirate/category.json +++ b/public/language/en@pirate/category.json @@ -3,5 +3,6 @@ "no_topics": "Thar be no topics in 'tis category.
Why don't ye give a go' postin' one?", "browsing": "browsin'", "no_replies": "No one has replied to ye message", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/en@pirate/error.json b/public/language/en@pirate/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/en@pirate/error.json +++ b/public/language/en@pirate/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/en@pirate/notifications.json b/public/language/en@pirate/notifications.json index cc1705eff6..49a3a10e05 100644 --- a/public/language/en@pirate/notifications.json +++ b/public/language/en@pirate/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/en@pirate/recent.json b/public/language/en@pirate/recent.json index 6e6df209fa..bb4318cb39 100644 --- a/public/language/en@pirate/recent.json +++ b/public/language/en@pirate/recent.json @@ -4,5 +4,6 @@ "week": "Week", "month": "Month", "year": "Year", + "alltime": "All Time", "no_recent_topics": "There be no recent topics." } \ No newline at end of file diff --git a/public/language/en@pirate/search.json b/public/language/en@pirate/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/en@pirate/search.json +++ b/public/language/en@pirate/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/en@pirate/user.json b/public/language/en@pirate/user.json index 286d72030a..a8efc3d857 100644 --- a/public/language/en@pirate/user.json +++ b/public/language/en@pirate/user.json @@ -4,6 +4,8 @@ "username": "User Name", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Full Name", "website": "Website", "location": "Location", @@ -61,5 +63,7 @@ "posts_per_page": "Posts per Page", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/en_US/category.json b/public/language/en_US/category.json index 99ba34a172..93272e1a06 100644 --- a/public/language/en_US/category.json +++ b/public/language/en_US/category.json @@ -3,5 +3,6 @@ "no_topics": "There are no topics in this category.
Why don't you try posting one?", "browsing": "browsing", "no_replies": "No one has replied", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/en_US/error.json b/public/language/en_US/error.json index bfec6e00d7..200ce83066 100644 --- a/public/language/en_US/error.json +++ b/public/language/en_US/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/en_US/notifications.json b/public/language/en_US/notifications.json index 7f97d92275..4d2461226d 100644 --- a/public/language/en_US/notifications.json +++ b/public/language/en_US/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favorited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/en_US/recent.json b/public/language/en_US/recent.json index 1bf0cf9f01..d683cce436 100644 --- a/public/language/en_US/recent.json +++ b/public/language/en_US/recent.json @@ -4,5 +4,6 @@ "week": "Week", "month": "Month", "year": "Year", + "alltime": "All Time", "no_recent_topics": "There are no recent topics." } \ No newline at end of file diff --git a/public/language/en_US/search.json b/public/language/en_US/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/en_US/search.json +++ b/public/language/en_US/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/en_US/user.json b/public/language/en_US/user.json index 0c68cc21b0..50848c7f83 100644 --- a/public/language/en_US/user.json +++ b/public/language/en_US/user.json @@ -4,6 +4,8 @@ "username": "User Name", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Full Name", "website": "Website", "location": "Location", @@ -61,5 +63,7 @@ "posts_per_page": "Posts per Page", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/es/category.json b/public/language/es/category.json index cd64161deb..ff01be1a31 100644 --- a/public/language/es/category.json +++ b/public/language/es/category.json @@ -3,5 +3,6 @@ "no_topics": "No hay temas en esta categoría.
¿Por que no te animas y publicas uno?", "browsing": "viendo ahora", "no_replies": "Nadie ha respondido aún", - "share_this_category": "Compartir esta categoría" + "share_this_category": "Compartir esta categoría", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/es/email.json b/public/language/es/email.json index 98e591ab02..b791157e63 100644 --- a/public/language/es/email.json +++ b/public/language/es/email.json @@ -1,20 +1,20 @@ { - "password-reset-requested": "Password Reset Requested - %1!", - "welcome-to": "Welcome to %1", - "greeting_no_name": "Hello", - "greeting_with_name": "Hello %1", - "welcome.text1": "Thank you for registering with %1!", - "welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.", - "welcome.cta": "Click here to confirm your email address", - "reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.", - "reset.text2": "To continue with the password reset, please click on the following link:", - "reset.cta": "Click here to reset your password", - "digest.notifications": "You have some unread notifications from %1:", - "digest.latest_topics": "Latest topics from %1", - "digest.cta": "Click here to visit %1", - "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", - "digest.daily.no_topics": "There have been no active topics in the past day", - "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", - "closing": "Thanks!" + "password-reset-requested": "Reinicio de contraseña solicitado - %1!", + "welcome-to": "Bienvenido a %1", + "greeting_no_name": "Hola", + "greeting_with_name": "Hola %1", + "welcome.text1": "Gracias por registrarte con %1!", + "welcome.text2": "Para activar completamente tu cuenta, necesitamos verificar que la dirección email con la que te registraste te pertenece.", + "welcome.cta": "Cliquea aquí para confirmar tu dirección email.", + "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.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.", + "digest.unsub.cta": "Cliquea aquí para alterar estos ajustes", + "digest.daily.no_topics": "No han habido temas activos en el día pasado", + "test.text1": "Este es un email de prueba para verificar que el envío de email está ajustado correctamente para tu NodeBB", + "closing": "¡Gracias!" } \ No newline at end of file diff --git a/public/language/es/error.json b/public/language/es/error.json index 38ff5515ae..d3fa14fe91 100644 --- a/public/language/es/error.json +++ b/public/language/es/error.json @@ -12,11 +12,13 @@ "invalid-title": "Título no válido!", "invalid-user-data": "Datos de Usuario no válidos", "invalid-password": "Contraseña no válida", + "invalid-username-or-password": "Please specify both a username and password", "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.", "username-too-short": "El nombre de usuario es demasiado corto", + "username-too-long": "Username too long", "user-banned": "Usuario expulsado", "no-category": "La categoría no existe", "no-topic": "El tema no existe.", @@ -25,7 +27,7 @@ "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.", - "no-emailers-configured": "No email plugins were loaded, so a test email could not be sent", + "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.", @@ -52,5 +54,9 @@ "upload-error": "Error de subida: %1", "signature-too-long": "Las firmas no pueden ser más largas de %1 caracteres!", "cant-chat-with-yourself": "No puedes conversar contigo mismo!", - "not-enough-reputation-to-downvote": "No tienes suficiente reputación para votar negativo este post" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "No tienes suficiente reputación para votar negativo este post", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/es/groups.json b/public/language/es/groups.json index c00c111e11..bb4b46d1f8 100644 --- a/public/language/es/groups.json +++ b/public/language/es/groups.json @@ -1,7 +1,7 @@ { - "view_group": "View Group", - "details.title": "Group Details", - "details.members": "Member List", - "details.has_no_posts": "This group's members have not made any posts.", - "details.latest_posts": "Latest Posts" + "view_group": "Ver Grupo", + "details.title": "Detalles de Grupo", + "details.members": "Lista de Miembros", + "details.has_no_posts": "Los miembros de este grupo no han hecho ninguna publicación.", + "details.latest_posts": "Últimas Publicaciones" } \ No newline at end of file diff --git a/public/language/es/notifications.json b/public/language/es/notifications.json index 3a7168a44d..3be3cccdc8 100644 --- a/public/language/es/notifications.json +++ b/public/language/es/notifications.json @@ -4,17 +4,20 @@ "see_all": "Ver todas las notificaciones", "back_to_home": "Volver a %1", "outgoing_link": "Enlace Externo", - "outgoing_link_message": "You are now leaving %1.", - "continue_to": "Continue to %1", - "return_to": "Return to %1", + "outgoing_link_message": "Ahora estás saliendo %1.", + "continue_to": "Continuar a %1", + "return_to": "Regresar a %1", "new_notification": "Nueva Notificación", "you_have_unread_notifications": "Tienes notificaciones sin leer.", "new_message_from": "Nuevo mensaje de %1", - "upvoted_your_post": "%1 ha marcado como favorita tu respuesta.", - "favourited_your_post": "%1 ha marcado como favorita tu respuesta.", - "user_flagged_post": "%1 ha marcado como indebida una respuesta.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 ha publicado una respuesta a: %2", "user_mentioned_you_in": "%1 te mencionó en %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Correo electrónico confirmado", "email-confirmed-message": "Gracias por validar tu correo electrónico. Tu cuenta ya está completamente activa.", "email-confirm-error": "Un error ocurrió...", diff --git a/public/language/es/pages.json b/public/language/es/pages.json index 4b79bc293f..ab6e4eaedd 100644 --- a/public/language/es/pages.json +++ b/public/language/es/pages.json @@ -5,7 +5,7 @@ "recent": "Temas Recientes", "users": "Usuarios Registrado", "notifications": "Notificaciones", - "tags": "Topics tagged under \"%1\"", + "tags": "Temas etiquetados bajo \"%1\"", "user.edit": "Editando \"%1\"", "user.following": "Gente que sigue %1 ", "user.followers": "Seguidores de %1", diff --git a/public/language/es/recent.json b/public/language/es/recent.json index 8b25e63d46..a187f9d661 100644 --- a/public/language/es/recent.json +++ b/public/language/es/recent.json @@ -4,5 +4,6 @@ "week": "Semana", "month": "Mes", "year": "Año", + "alltime": "All Time", "no_recent_topics": "No hay publicaciones recientes" } \ No newline at end of file diff --git a/public/language/es/search.json b/public/language/es/search.json index d0ffc64f36..8ac377c932 100644 --- a/public/language/es/search.json +++ b/public/language/es/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 resuldado(s) coinciden con \"%2\". (%3 segundos)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/es/topic.json b/public/language/es/topic.json index ae3fa08fc1..1522291a09 100644 --- a/public/language/es/topic.json +++ b/public/language/es/topic.json @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 usuario(s) y %2 invitado(s) más", "more_users": "%1 usuario(s) más", "more_guests": "%1 invitado(s) más", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 y otros %2", "sort_by": "Ordenar por", "oldest_to_newest": "Más antiguo a más nuevo", "newest_to_oldest": "Más nuevo a más antiguo", diff --git a/public/language/es/user.json b/public/language/es/user.json index c020d86931..3d711138d2 100644 --- a/public/language/es/user.json +++ b/public/language/es/user.json @@ -4,6 +4,8 @@ "username": "Nombre de usuario", "email": "Correo Electrónico", "confirm_email": "Repetir correo electrónico", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nombre completo", "website": "Sitio Web", "location": "Ubicación", @@ -61,5 +63,7 @@ "posts_per_page": "Post por página", "notification_sounds": "Reproducir un sonido al recibir una notificación", "browsing": "Preferencias de navegación.", - "open_links_in_new_tab": "Abrir los enlaces externos en una nueva pestaña?" + "open_links_in_new_tab": "Abrir los enlaces externos en una nueva pestaña?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/et/category.json b/public/language/et/category.json index 1d35948aac..865d8dbae9 100644 --- a/public/language/et/category.json +++ b/public/language/et/category.json @@ -3,5 +3,6 @@ "no_topics": "Kahjuks ei leidu siin kategoorias ühtegi teemat.
Soovid postitada?", "browsing": "vaatab", "no_replies": "Keegi pole vastanud", - "share_this_category": "Jaga seda kategooriat" + "share_this_category": "Jaga seda kategooriat", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/et/error.json b/public/language/et/error.json index 596a04b4df..459b749ca0 100644 --- a/public/language/et/error.json +++ b/public/language/et/error.json @@ -12,11 +12,13 @@ "invalid-title": "Vigane pealkiri!", "invalid-user-data": "Vigased kasutaja andmed", "invalid-password": "Vigane parool", + "invalid-username-or-password": "Please specify both a username and password", "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.", "username-too-short": "Kasutajanimi on liiga lühike", + "username-too-long": "Username too long", "user-banned": "Kasutaja bannitud", "no-category": "Kategooriat ei eksisteeri", "no-topic": "Teemat ei eksisteeri", @@ -52,5 +54,9 @@ "upload-error": "Üleslaadimise viga: %1", "signature-too-long": "Allkiri ei saa olla pikem kui %1 tähemärki!", "cant-chat-with-yourself": "Sa ei saa endaga vestelda!", - "not-enough-reputation-to-downvote": "Sul ei ole piisavalt reputatsiooni, et anda negatiivset hinnangut sellele postitusele." + "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", + "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." } \ No newline at end of file diff --git a/public/language/et/notifications.json b/public/language/et/notifications.json index 4de13a6e0f..8ee69d3072 100644 --- a/public/language/et/notifications.json +++ b/public/language/et/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Uus teade", "you_have_unread_notifications": "Sul ei ole lugemata teateid.", "new_message_from": "Uus sõnum kasutajalt %1", - "upvoted_your_post": "%1 hääletas sinu postituse poolt.", - "favourited_your_post": "%1 märkis sinu postituse lemmikuks.", - "user_flagged_post": "%1 märgistas postituse.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "Kasutaja %1 postitas vastuse teemasse %2", "user_mentioned_you_in": "%1 mainis sind postituses %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Emaili aadress kinnitatud", "email-confirmed-message": "Täname, et kinnitasite oma emaili aadressi. Teie kasutaja omn nüüd täielikult aktiveeritud.", "email-confirm-error": "Süsteemis tekkis viga...", diff --git a/public/language/et/recent.json b/public/language/et/recent.json index 7afd6c41cd..53c112df2d 100644 --- a/public/language/et/recent.json +++ b/public/language/et/recent.json @@ -4,5 +4,6 @@ "week": "Nädal", "month": "Kuu", "year": "Aasta", + "alltime": "All Time", "no_recent_topics": "Hetkel ei ole hiljutisi teemasid." } \ No newline at end of file diff --git a/public/language/et/search.json b/public/language/et/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/et/search.json +++ b/public/language/et/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/et/user.json b/public/language/et/user.json index 7e9a6cc46d..4ecb16dac4 100644 --- a/public/language/et/user.json +++ b/public/language/et/user.json @@ -4,6 +4,8 @@ "username": "Kasutajanimi", "email": "Email", "confirm_email": "Kinnita email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Täisnimi", "website": "Koduleht", "location": "Asukoht", @@ -61,5 +63,7 @@ "posts_per_page": "Postitusi ühe lehekülje kohta", "notification_sounds": "Tee häält, kui saabub teade.", "browsing": "Sirvimis sätted", - "open_links_in_new_tab": "Ava väljaminevad lingid uues vaheaknas?" + "open_links_in_new_tab": "Ava väljaminevad lingid uues vaheaknas?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/fa_IR/category.json b/public/language/fa_IR/category.json index 1f5299e534..c1c61a1a9f 100644 --- a/public/language/fa_IR/category.json +++ b/public/language/fa_IR/category.json @@ -3,5 +3,6 @@ "no_topics": "هیچ جستاری در این دسته نیست.
چرا شما یکی نفرستید؟", "browsing": "بیننده‌ها", "no_replies": "هیچ کسی پاسخ نداده است.", - "share_this_category": "به اشتراک‌گذاری این دسته" + "share_this_category": "به اشتراک‌گذاری این دسته", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/fa_IR/error.json b/public/language/fa_IR/error.json index cf82fa6622..29caeaa0c1 100644 --- a/public/language/fa_IR/error.json +++ b/public/language/fa_IR/error.json @@ -12,11 +12,13 @@ "invalid-title": "عنوان نامعتبر است!", "invalid-user-data": "داده‌های کاربری نامعتبر است.", "invalid-password": "گذرواژه نامعتبر است.", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "عدد صفحه‌بندی نامعتبر است.", "username-taken": "این نام کاربری گرفته شده است.", "email-taken": "این رایانامه گرفته شده است.", "email-not-confirmed": "رایانامه شما تأیید نشده است، لطفاً برای تأیید رایانامه‌تان اینجا را بفشارید.", "username-too-short": "نام کاربری خیلی کوتاه است.", + "username-too-long": "Username too long", "user-banned": "کاربر محروم شد.", "no-category": "چنین دسته‌ای وجود ندارد.", "no-topic": "چنین جستاری وجود ندارد.", @@ -52,5 +54,9 @@ "upload-error": "خطای بارگذاری: %1", "signature-too-long": "امضا نمی‌تواند بیش‌تر از %1 نویسه داشته باشد.", "cant-chat-with-yourself": "شما نمی‌توانید با خودتان گفتگو کنید!", - "not-enough-reputation-to-downvote": "شما اعتبار کافی برای دادن رای منفی به این دیدگاه را ندارید." + "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", + "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." } \ No newline at end of file diff --git a/public/language/fa_IR/notifications.json b/public/language/fa_IR/notifications.json index a643005e04..62b48b71af 100644 --- a/public/language/fa_IR/notifications.json +++ b/public/language/fa_IR/notifications.json @@ -10,11 +10,14 @@ "new_notification": "آکاه‌سازی تازه", "you_have_unread_notifications": "شما آگاه‌سازی‌های نخوانده دارید.", "new_message_from": "پیام تازه از %1", - "upvoted_your_post": "%1 به دیدگاه شما رای داده است.", - "favourited_your_post": "%1 دیدگاه شما را پسندیده است.", - "user_flagged_post": "پرچم خوردن یک دیدگاه از سوی %1", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "پاسخ دادن به %2 از سوی %1", "user_mentioned_you_in": "%1 در %2 به شما اشاره کرد", + "user_started_following_you": "%1 started following you.", "email-confirmed": "رایانامه تایید شد", "email-confirmed-message": "بابت تایید ایمیلتان سپاس‌گزاریم. حساب کاربری شما اکنون به صورت کامل فعال شده است.", "email-confirm-error": "خطایی پیش آمده است...", diff --git a/public/language/fa_IR/recent.json b/public/language/fa_IR/recent.json index 74a8876ebf..4f6f3256a5 100644 --- a/public/language/fa_IR/recent.json +++ b/public/language/fa_IR/recent.json @@ -4,5 +4,6 @@ "week": "هفته", "month": "ماه", "year": "سال", + "alltime": "All Time", "no_recent_topics": "هیچ جستار تازه‌ای نیست." } \ No newline at end of file diff --git a/public/language/fa_IR/search.json b/public/language/fa_IR/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/fa_IR/search.json +++ b/public/language/fa_IR/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/fa_IR/user.json b/public/language/fa_IR/user.json index cfe346d5fd..f0212723e2 100644 --- a/public/language/fa_IR/user.json +++ b/public/language/fa_IR/user.json @@ -4,6 +4,8 @@ "username": "نام کاربری", "email": "رایانامه", "confirm_email": "تأیید رایانامه", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "نام کامل", "website": "تارنما", "location": "محل سکونت", @@ -61,5 +63,7 @@ "posts_per_page": "شمار دیدگاه‌ها در هر برگه", "notification_sounds": "پخش صدا هنگامی که شما یک آگاه‌سازی دریافت می‌کنید.", "browsing": "تنظیمات مرور", - "open_links_in_new_tab": "بازکردن لینک‌های خارجی در تب جدید؟" + "open_links_in_new_tab": "بازکردن لینک‌های خارجی در تب جدید؟", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/fi/category.json b/public/language/fi/category.json index 67c3c2125a..f3ae42f69f 100644 --- a/public/language/fi/category.json +++ b/public/language/fi/category.json @@ -3,5 +3,6 @@ "no_topics": "Tällä aihealueella ei ole yhtään aihetta.
Miksi et aloittaisi uutta?", "browsing": "selaamassa", "no_replies": "Kukaan ei ole vastannut", - "share_this_category": "Jaa tämä kategoria" + "share_this_category": "Jaa tämä kategoria", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/fi/error.json b/public/language/fi/error.json index a9c4718431..738eb62699 100644 --- a/public/language/fi/error.json +++ b/public/language/fi/error.json @@ -12,11 +12,13 @@ "invalid-title": "Virheellinen otsikko!", "invalid-user-data": "Virheellinen käyttäjätieto", "invalid-password": "Virheellinen salasana", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Virheellinen taittoarvo", "username-taken": "Käyttäjänimi varattu", "email-taken": "Sähköpostiosoite varattu", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Käyttäjänimi on liian lyhyt", + "username-too-long": "Username too long", "user-banned": "Käyttäjä on estetty", "no-category": "Kategoriaa ei ole olemassa", "no-topic": "Aihetta ei ole olemassa", @@ -52,5 +54,9 @@ "upload-error": "Lähetysvirhe: %1", "signature-too-long": "Allekirjoitus ei voi olla pidempi kuin %1 merkkiä!", "cant-chat-with-yourself": "Et voi keskustella itsesi kanssa!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/fi/notifications.json b/public/language/fi/notifications.json index e9507997a0..2eb5163d4a 100644 --- a/public/language/fi/notifications.json +++ b/public/language/fi/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Uusi ilmoitus", "you_have_unread_notifications": "Sinulla on lukemattomia ilmoituksia.", "new_message_from": "Uusi viesti käyttäjältä %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 lisäsi viestisi suosikkeihinsa.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Sähköpostiosoite vahvistettu", "email-confirmed-message": "Kiitos sähköpostiosoitteesi vahvistamisesta. Käyttäjätilisi on nyt täysin aktivoitu.", "email-confirm-error": "Tapahtui virhe...", diff --git a/public/language/fi/recent.json b/public/language/fi/recent.json index fb3bd49dbf..b2bff39da7 100644 --- a/public/language/fi/recent.json +++ b/public/language/fi/recent.json @@ -4,5 +4,6 @@ "week": "Viikko", "month": "Kuukausi", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Ei viimeisimpiä aiheita." } \ No newline at end of file diff --git a/public/language/fi/search.json b/public/language/fi/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/fi/search.json +++ b/public/language/fi/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/fi/user.json b/public/language/fi/user.json index 47b8df6b9c..d008e94b62 100644 --- a/public/language/fi/user.json +++ b/public/language/fi/user.json @@ -4,6 +4,8 @@ "username": "Käyttäjän nimi", "email": "Sähköposti", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Koko nimi", "website": "Kotisivu", "location": "Sijainti", @@ -61,5 +63,7 @@ "posts_per_page": "Viestiä per sivu", "notification_sounds": "Soita merkkiääni ilmoituksen saapuessa.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/fr/category.json b/public/language/fr/category.json index d53466e617..c680ae7db9 100644 --- a/public/language/fr/category.json +++ b/public/language/fr/category.json @@ -3,5 +3,6 @@ "no_topics": "Il n'y a aucun sujet dans cette catégorie.
Pourquoi ne pas en créer un ?", "browsing": "parcouru par", "no_replies": "Personne n'a répondu", - "share_this_category": "Partager cette catégorie" + "share_this_category": "Partager cette catégorie", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/fr/error.json b/public/language/fr/error.json index 63d9a1765f..821061cee1 100644 --- a/public/language/fr/error.json +++ b/public/language/fr/error.json @@ -12,11 +12,13 @@ "invalid-title": "Titre invalide !", "invalid-user-data": "Données utilisateur invalides", "invalid-password": "Mot de passe invalide", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Valeur de pagination invalide", "username-taken": "Nom d’utilisateur déjà utilisé", "email-taken": "Email déjà utilisé", "email-not-confirmed": "Votre adresse email n'est pas confirmée, cliquez ici pour la valider.", "username-too-short": "Nom d'utilisateur trop court", + "username-too-long": "Username too long", "user-banned": "Utilisateur banni", "no-category": "Cette catégorie n'existe pas", "no-topic": "Ce sujet n'existe pas", @@ -52,5 +54,9 @@ "upload-error": "Erreur d'envoi : %1", "signature-too-long": "La signature ne peut dépasser %1 caractères !", "cant-chat-with-yourself": "Vous ne pouvez chatter avec vous même !", - "not-enough-reputation-to-downvote": "Vous n'avez pas une réputation assez élevée pour noter négativement ce message" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Vous n'avez pas une réputation assez élevée pour noter négativement ce message", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/fr/notifications.json b/public/language/fr/notifications.json index 560fb83751..5e1178f78c 100644 --- a/public/language/fr/notifications.json +++ b/public/language/fr/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Nouvelle notification", "you_have_unread_notifications": "Vous avez des notifications non-lues", "new_message_from": "Nouveau message de %1", - "upvoted_your_post": "%1 a voté pour votre message.", - "favourited_your_post": "%1 a mis votre message en favoris.", - "user_flagged_post": "%1 a signalé un message.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 a répondu à : %2", "user_mentioned_you_in": "%1 vous a mentionné dans %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email vérifié", "email-confirmed-message": "Merci pour la validation de votre adresse email. Votre compte est désormais activé.", "email-confirm-error": "Un erreur est survenue ...", diff --git a/public/language/fr/recent.json b/public/language/fr/recent.json index 2e69d07a4e..6af7b3e81a 100644 --- a/public/language/fr/recent.json +++ b/public/language/fr/recent.json @@ -4,5 +4,6 @@ "week": "Semaine", "month": "Mois", "year": "An", + "alltime": "All Time", "no_recent_topics": "Il n'y a aucun sujet récent." } \ No newline at end of file diff --git a/public/language/fr/search.json b/public/language/fr/search.json index ab88db2e52..8974b7f593 100644 --- a/public/language/fr/search.json +++ b/public/language/fr/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 résultat(s) correspondant(s) à \"%2\", (%3 secondes)" + "results_matching": "%1 résultat(s) correspondant(s) à \"%2\", (%3 secondes)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/fr/user.json b/public/language/fr/user.json index 6ee1f52ce5..68a99a577e 100644 --- a/public/language/fr/user.json +++ b/public/language/fr/user.json @@ -4,6 +4,8 @@ "username": "Nom d'utilisateur", "email": "Email", "confirm_email": "Confirmer l'adresse email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nom", "website": "Site web", "location": "Emplacement", @@ -61,5 +63,7 @@ "posts_per_page": "Messages par page", "notification_sounds": "Émettre un son lors de la réception de notifications.", "browsing": "Paramètres de navigation", - "open_links_in_new_tab": "Ouvrir les liens externes dans un nouvel onglet ?" + "open_links_in_new_tab": "Ouvrir les liens externes dans un nouvel onglet ?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/he/category.json b/public/language/he/category.json index 4d32d01bea..bc5e530729 100644 --- a/public/language/he/category.json +++ b/public/language/he/category.json @@ -3,5 +3,6 @@ "no_topics": "קטגוריה זו ריקה מנושאים.
למה שלא תנסה להוסיף נושא חדש?", "browsing": "צופים בנושא זה כעת", "no_replies": "אין תגובות", - "share_this_category": "שתף קטגוריה זו" + "share_this_category": "שתף קטגוריה זו", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/he/error.json b/public/language/he/error.json index c5cd72a2a0..2df9c1b918 100644 --- a/public/language/he/error.json +++ b/public/language/he/error.json @@ -12,11 +12,13 @@ "invalid-title": "כותרת שגויה", "invalid-user-data": "מידע משתמש שגוי", "invalid-password": "סיסמא שגויה", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "ערך דפדוף שגוי", "username-taken": "שם משתמש תפוס", "email-taken": "כתובת אימייל תפוסה", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "שם משתמש קצר מדי", + "username-too-long": "Username too long", "user-banned": "המשתמש חסום", "no-category": "קטגוריה אינה קיימת", "no-topic": "נושא אינו קיים", @@ -52,5 +54,9 @@ "upload-error": "שגיאה בהעלאה : %1", "signature-too-long": "חתימה אינה יכולה להיות ארוכה מ %1 תווים!", "cant-chat-with-yourself": "לא ניתן לעשות צ'אט עם עצמך!", - "not-enough-reputation-to-downvote": "אין לך מספיק מוניטין כדי להוריד את הדירוג של פוסט זה" + "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", + "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." } \ No newline at end of file diff --git a/public/language/he/notifications.json b/public/language/he/notifications.json index bcbb5eac8b..f3f8efa00f 100644 --- a/public/language/he/notifications.json +++ b/public/language/he/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/he/recent.json b/public/language/he/recent.json index 5629c9f23f..0a20c6301a 100644 --- a/public/language/he/recent.json +++ b/public/language/he/recent.json @@ -4,5 +4,6 @@ "week": "שבוע", "month": "חודש", "year": "Year", + "alltime": "All Time", "no_recent_topics": "אין נושאים חדשים" } \ No newline at end of file diff --git a/public/language/he/search.json b/public/language/he/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/he/search.json +++ b/public/language/he/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/he/user.json b/public/language/he/user.json index 1897b49f7d..292d31f90b 100644 --- a/public/language/he/user.json +++ b/public/language/he/user.json @@ -4,6 +4,8 @@ "username": "שם משתמש", "email": "כתובת אימייל", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "שם מלא", "website": "אתר", "location": "מיקום", @@ -61,5 +63,7 @@ "posts_per_page": "כמות פוסטים בעמוד", "notification_sounds": "השמע צליל כאשר מתקבלת הודעה עבורך.", "browsing": "הגדרות צפייה", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/hu/category.json b/public/language/hu/category.json index f6f1002ad9..f0eb8a400b 100644 --- a/public/language/hu/category.json +++ b/public/language/hu/category.json @@ -3,5 +3,6 @@ "no_topics": "Még nincs nyitva egy téma sem ebben a kategóriában.Miért nem hozol létre egyet?", "browsing": "jelenlévők", "no_replies": "Senki sem válaszolt még", - "share_this_category": "Hozzászólás megosztása" + "share_this_category": "Hozzászólás megosztása", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/hu/error.json b/public/language/hu/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/hu/error.json +++ b/public/language/hu/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/hu/notifications.json b/public/language/hu/notifications.json index c189a4e5bb..86ce42f88a 100644 --- a/public/language/hu/notifications.json +++ b/public/language/hu/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/hu/recent.json b/public/language/hu/recent.json index 332aaf1de2..b595ffd958 100644 --- a/public/language/hu/recent.json +++ b/public/language/hu/recent.json @@ -4,5 +4,6 @@ "week": "Hét", "month": "Hónap", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Nincs friss topik." } \ No newline at end of file diff --git a/public/language/hu/search.json b/public/language/hu/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/hu/search.json +++ b/public/language/hu/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/hu/user.json b/public/language/hu/user.json index 9e371cc20b..909e4ad553 100644 --- a/public/language/hu/user.json +++ b/public/language/hu/user.json @@ -4,6 +4,8 @@ "username": "Felhasználónév", "email": "E-mail", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Teljes Név", "website": "Weboldal", "location": "Lakhely", @@ -61,5 +63,7 @@ "posts_per_page": "Hozzászólás oldalanként", "notification_sounds": "Hang lejátszása ha értesítés érkezett.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/it/category.json b/public/language/it/category.json index 4d813335c3..c1f4ace222 100644 --- a/public/language/it/category.json +++ b/public/language/it/category.json @@ -3,5 +3,6 @@ "no_topics": "Non ci sono discussioni in questa categoria.
Perché non ne inizi una?", "browsing": "visualizzando", "no_replies": "Nessuno ha risposto", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/it/error.json b/public/language/it/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/it/error.json +++ b/public/language/it/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/it/notifications.json b/public/language/it/notifications.json index 1d2e122b74..957afe9eec 100644 --- a/public/language/it/notifications.json +++ b/public/language/it/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Nuove Notifiche", "you_have_unread_notifications": "Hai notifiche non lette.", "new_message_from": "Nuovo messaggio da %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/it/recent.json b/public/language/it/recent.json index 56a1191bc0..2047204baf 100644 --- a/public/language/it/recent.json +++ b/public/language/it/recent.json @@ -4,5 +4,6 @@ "week": "Settimana", "month": "Mese", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Non ci sono discussioni recenti." } \ No newline at end of file diff --git a/public/language/it/search.json b/public/language/it/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/it/search.json +++ b/public/language/it/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/it/user.json b/public/language/it/user.json index 7f437d56c5..d490e3e1ef 100644 --- a/public/language/it/user.json +++ b/public/language/it/user.json @@ -4,6 +4,8 @@ "username": "Nome Utente", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nome e Cognome", "website": "Sito Internet", "location": "Località", @@ -61,5 +63,7 @@ "posts_per_page": "Post per Pagina", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/ja/category.json b/public/language/ja/category.json index 43bc8f22d5..c5ffc01c13 100644 --- a/public/language/ja/category.json +++ b/public/language/ja/category.json @@ -3,5 +3,6 @@ "no_topics": "まだスレッドはありません.
一番目のスレッドを書いてみないか?", "browsing": "閲覧中", "no_replies": "返事はまだありません", - "share_this_category": "この板を共有" + "share_this_category": "この板を共有", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ja/error.json b/public/language/ja/error.json index cbaf323360..3d88578169 100644 --- a/public/language/ja/error.json +++ b/public/language/ja/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "無効なユーザーデータ", "invalid-password": "無効なパスワード", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "無効な改ページ設定値", "username-taken": "ユーザー名が取られた", "email-taken": "メールアドレスが使用された", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "ユーザーが停止された", "no-category": "板が存在しない", "no-topic": "スレッドが存在しない", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "署名は最大%1文字までです!", "cant-chat-with-yourself": "自分にチャットすることはできません!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/ja/notifications.json b/public/language/ja/notifications.json index efe8333fac..9823deff19 100644 --- a/public/language/ja/notifications.json +++ b/public/language/ja/notifications.json @@ -10,11 +10,14 @@ "new_notification": "新しい通知", "you_have_unread_notifications": "未読の通知があります。", "new_message_from": "%1からの新しいメッセージ", - "upvoted_your_post": "%1はあなたのポストを評価しました。", - "favourited_your_post": "%1はあなたのポストをお気に入りにしました。", - "user_flagged_post": "%1 ポストを報告しました。", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1%2 への返事を作成しました。", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/ja/recent.json b/public/language/ja/recent.json index 4ca75a039d..35cdd2b23f 100644 --- a/public/language/ja/recent.json +++ b/public/language/ja/recent.json @@ -4,5 +4,6 @@ "week": "最近 1 週", "month": "最近 1 ヶ月", "year": "Year", + "alltime": "All Time", "no_recent_topics": "最近のスレッドはありません。" } \ No newline at end of file diff --git a/public/language/ja/search.json b/public/language/ja/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/ja/search.json +++ b/public/language/ja/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ja/user.json b/public/language/ja/user.json index f37a215849..ddb43c4dd5 100644 --- a/public/language/ja/user.json +++ b/public/language/ja/user.json @@ -4,6 +4,8 @@ "username": "ユーザー名", "email": "メール", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "フルネーム", "website": "ウェブサイト", "location": "ロケーション", @@ -61,5 +63,7 @@ "posts_per_page": "ページ毎のポスト数", "notification_sounds": "通知が来たとき音を流す", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/ko/category.json b/public/language/ko/category.json index 5437b07304..0ce8558aa9 100644 --- a/public/language/ko/category.json +++ b/public/language/ko/category.json @@ -3,5 +3,6 @@ "no_topics": "이 카테고리에는 생성된 주제가 없습니다.
먼저 주제를 생성해 보세요.", "browsing": "이 주제를 읽고 있는 사용자", "no_replies": "답글이 없습니다.", - "share_this_category": "이 카테고리를 공유" + "share_this_category": "이 카테고리를 공유", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ko/error.json b/public/language/ko/error.json index fa961bc709..fd74542ee3 100644 --- a/public/language/ko/error.json +++ b/public/language/ko/error.json @@ -12,11 +12,13 @@ "invalid-title": "올바르지 않은 제목입니다.", "invalid-user-data": "올바르지 않은 사용자 정보입니다.", "invalid-password": "올바르지 않은 비밀번호입니다.", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "올바르지 않은 페이지입니다.", "username-taken": "이미 사용 중인 사용자 이름입니다.", "email-taken": "이미 사용 중인 이메일입니다.", "email-not-confirmed": "아직 이메일이 인증되지 않았습니다. 여기를 누르면 인증 메일을 발송할 수 있습니다.", "username-too-short": "사용자 이름이 너무 짧습니다.", + "username-too-long": "Username too long", "user-banned": "차단된 사용자입니다.", "no-category": "존재하지 않는 카테고리입니다.", "no-topic": "존재하지 않는 주제입니다.", @@ -52,5 +54,9 @@ "upload-error": "업로드 오류가 발생했습니다. : %1", "signature-too-long": "서명은 최대 %1자로 제한됩니다.", "cant-chat-with-yourself": "자신과는 채팅할 수 없습니다.", - "not-enough-reputation-to-downvote": "인기도가 낮아 이 게시물에 반대할 수 없습니다." + "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", + "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." } \ No newline at end of file diff --git a/public/language/ko/notifications.json b/public/language/ko/notifications.json index 8ececb6c49..90d004d7e0 100644 --- a/public/language/ko/notifications.json +++ b/public/language/ko/notifications.json @@ -10,11 +10,14 @@ "new_notification": "새 알림", "you_have_unread_notifications": "읽지 않은 알림이 있습니다.", "new_message_from": "%1님이 메시지를 보냈습니다.", - "upvoted_your_post": "%1님이 내 게시물을 추천했습니다.", - "favourited_your_post": "%1님이 내 게시물을 관심글로 등록했습니다.", - "user_flagged_post": "%1님이 게시물을 신고했습니다.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1님이 %2님의 게시물에 답글을 작성했습니다.", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/ko/recent.json b/public/language/ko/recent.json index 6190dda700..5e3f728004 100644 --- a/public/language/ko/recent.json +++ b/public/language/ko/recent.json @@ -4,5 +4,6 @@ "week": "주간", "month": "월간", "year": "Year", + "alltime": "All Time", "no_recent_topics": "최근 생성된 주제가 없습니다." } \ No newline at end of file diff --git a/public/language/ko/search.json b/public/language/ko/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/ko/search.json +++ b/public/language/ko/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ko/user.json b/public/language/ko/user.json index baf5183211..e3b7b29e83 100644 --- a/public/language/ko/user.json +++ b/public/language/ko/user.json @@ -4,6 +4,8 @@ "username": "사용자 이름", "email": "이메일", "confirm_email": "이메일 확인", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "이름", "website": "웹 사이트", "location": "거주지", @@ -61,5 +63,7 @@ "posts_per_page": "페이지 당 게시물 수", "notification_sounds": "알림을 수신하면 알림음을 재생", "browsing": "페이지 열기", - "open_links_in_new_tab": "외부 링크를 새 탭에서 열기" + "open_links_in_new_tab": "외부 링크를 새 탭에서 열기", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/lt/category.json b/public/language/lt/category.json index ba84df3cf4..1c9dd0899b 100644 --- a/public/language/lt/category.json +++ b/public/language/lt/category.json @@ -3,5 +3,6 @@ "no_topics": "Šioje kategorijoje temų nėra.
Kodėl gi jums nesukūrus naujos?", "browsing": "naršo", "no_replies": "Niekas dar neatsakė", - "share_this_category": "Pasidalinti šią kategoriją" + "share_this_category": "Pasidalinti šią kategoriją", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/lt/error.json b/public/language/lt/error.json index ca771bc828..f41fc62c24 100644 --- a/public/language/lt/error.json +++ b/public/language/lt/error.json @@ -12,11 +12,13 @@ "invalid-title": "Neteisingas pavadinimas!", "invalid-user-data": "Klaidingi vartotojo duomenys", "invalid-password": "Klaidingas slaptažodis", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Klaidinga puslapiavimo reikšmė", "username-taken": "Vartotojo vardas jau užimtas", "email-taken": "El. pašto adresas jau užimtas", "email-not-confirmed": "Jūsų el. paštas nepatvirtintas, prašome paspausti čia norint jį patvirtinti.", "username-too-short": "Slapyvardis per trumpas", + "username-too-long": "Username too long", "user-banned": "Vartotojas užblokuotas", "no-category": "Kategorija neegzistuoja", "no-topic": "Tema neegzistuoja", @@ -52,5 +54,9 @@ "upload-error": "Įkėlimo klaida: %1", "signature-too-long": "Parašas negali būti ilgesnis negu %1 simboliai!", "cant-chat-with-yourself": "Jūs negalite susirašinėti su savimi!", - "not-enough-reputation-to-downvote": "Jūs neturite pakankamai reputacijos balsuoti prieš šį pranešimą" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Jūs neturite pakankamai reputacijos balsuoti prieš šį pranešimą", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/lt/notifications.json b/public/language/lt/notifications.json index 96ffad091b..864652cb57 100644 --- a/public/language/lt/notifications.json +++ b/public/language/lt/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Naujas pranešimas", "you_have_unread_notifications": "Jūs turite neperskaitytų pranešimų.", "new_message_from": "Nauja žinutė nuo %1", - "upvoted_your_post": "%1 teigiamai įvertino jūsų pranešimą.", - "favourited_your_post": "%1 pamėgo jūsų pranešimą.", - "user_flagged_post": "%1 pažymėjo pranešimą moderavimui.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 parašė atsaką %2", "user_mentioned_you_in": "%1 paminėjo Jus %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "El. paštas patvirtintas", "email-confirmed-message": "Dėkojame už el. pašto patvirtinimą. Jūsų paskyra pilnai aktyvuota.", "email-confirm-error": "Įvyko klaida...", diff --git a/public/language/lt/recent.json b/public/language/lt/recent.json index 5be1ef3ff5..0ccdef0f8c 100644 --- a/public/language/lt/recent.json +++ b/public/language/lt/recent.json @@ -4,5 +4,6 @@ "week": "Savaitė", "month": "Mėnesis", "year": "Metai", + "alltime": "All Time", "no_recent_topics": "Paskutinių temų nėra" } \ No newline at end of file diff --git a/public/language/lt/search.json b/public/language/lt/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/lt/search.json +++ b/public/language/lt/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/lt/user.json b/public/language/lt/user.json index 7c811b34a4..1902cdd399 100644 --- a/public/language/lt/user.json +++ b/public/language/lt/user.json @@ -4,6 +4,8 @@ "username": "Vartotojo vardas", "email": "El. paštas", "confirm_email": "Patvirtinti el. paštą", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Vardas ir pavardė", "website": "Tinklalapis", "location": "Vieta", @@ -61,5 +63,7 @@ "posts_per_page": "Pranešimų puslapyje", "notification_sounds": "Groti garsą kai gaunate pranešimą.", "browsing": "Naršymo nustatymai", - "open_links_in_new_tab": "Atidaryti nuorodas naujame skirtuke?" + "open_links_in_new_tab": "Atidaryti nuorodas naujame skirtuke?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/ms/category.json b/public/language/ms/category.json index 755fb94858..db2dc8d039 100644 --- a/public/language/ms/category.json +++ b/public/language/ms/category.json @@ -3,5 +3,6 @@ "no_topics": "Tiada topik dalam kategori ini.
Cuba menghantar topik yang baru?", "browsing": "melihat", "no_replies": "Tiada jawapan", - "share_this_category": "Kongsi kategori ini" + "share_this_category": "Kongsi kategori ini", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ms/error.json b/public/language/ms/error.json index c76dc586f1..6c9f213d94 100644 --- a/public/language/ms/error.json +++ b/public/language/ms/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Password salah!", + "invalid-username-or-password": "Please specify both a username and password", "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.", "username-too-short": "Nama pengunna terlalu pendek", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/ms/notifications.json b/public/language/ms/notifications.json index 530c9d1f93..02cc302284 100644 --- a/public/language/ms/notifications.json +++ b/public/language/ms/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Pemberitahuan baru", "you_have_unread_notifications": "Anda ada pemberitahuan yang belum dibaca", "new_message_from": "Pesanan baru daripada %1", - "upvoted_your_post": "%1 telah undi-naik posting anda", - "favourited_your_post": "strong>%1
telah menggemari posting anda", - "user_flagged_post": "%1 menandakan posting", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 telah membalas posting kepada: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/ms/recent.json b/public/language/ms/recent.json index 8342257702..bface6de72 100644 --- a/public/language/ms/recent.json +++ b/public/language/ms/recent.json @@ -4,5 +4,6 @@ "week": "Minggu", "month": "Bulan", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Tiada topik terkini" } \ No newline at end of file diff --git a/public/language/ms/search.json b/public/language/ms/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/ms/search.json +++ b/public/language/ms/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ms/user.json b/public/language/ms/user.json index f560bec8d5..74fffdbd04 100644 --- a/public/language/ms/user.json +++ b/public/language/ms/user.json @@ -4,6 +4,8 @@ "username": "Nama pengguna", "email": "Emel", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nama penuh", "website": "Laman Web", "location": "Lokasi", @@ -61,5 +63,7 @@ "posts_per_page": "Kiriman setiap muka", "notification_sounds": "Mainkan muzik apabila anda menerima maklumbalas", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/nb/category.json b/public/language/nb/category.json index 14ab70de34..af2119d658 100644 --- a/public/language/nb/category.json +++ b/public/language/nb/category.json @@ -3,5 +3,6 @@ "no_topics": "Det er ingen emner i denne kategorien
Hvorfor ikke lage ett?", "browsing": "leser", "no_replies": "Ingen har svart", - "share_this_category": "Del denne kategorien" + "share_this_category": "Del denne kategorien", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/nb/error.json b/public/language/nb/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/nb/error.json +++ b/public/language/nb/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/nb/notifications.json b/public/language/nb/notifications.json index 96afebd800..2ffabea7c1 100644 --- a/public/language/nb/notifications.json +++ b/public/language/nb/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Nytt varsel", "you_have_unread_notifications": "Du har uleste varsler.", "new_message_from": "Ny melding fra %1", - "upvoted_your_post": "%1 har stemt opp ditt innlegg.", - "favourited_your_post": "%1 har favorittmerket ditt innlegg.", - "user_flagged_post": "%1 flagget ett innlegg.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 har skrevet et svar til: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/nb/recent.json b/public/language/nb/recent.json index 608c10c8b6..d3b44fc0f4 100644 --- a/public/language/nb/recent.json +++ b/public/language/nb/recent.json @@ -4,5 +4,6 @@ "week": "Uke", "month": "Måned", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Det er ingen nye tråder." } \ No newline at end of file diff --git a/public/language/nb/search.json b/public/language/nb/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/nb/search.json +++ b/public/language/nb/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/nb/user.json b/public/language/nb/user.json index c19894c3f3..5f3f3db9ab 100644 --- a/public/language/nb/user.json +++ b/public/language/nb/user.json @@ -4,6 +4,8 @@ "username": "Brukernavn", "email": "E-post", "confirm_email": "Bekfreft e-post", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Fullt navn", "website": "Nettsted", "location": "Plassering", @@ -61,5 +63,7 @@ "posts_per_page": "Innlegg per side", "notification_sounds": "Spill av en lyd når du mottar ett varsel.", "browsing": "Surfeinnstillinger", - "open_links_in_new_tab": "Åpne utgående linker i en ny fane?" + "open_links_in_new_tab": "Åpne utgående linker i en ny fane?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/nl/category.json b/public/language/nl/category.json index 59ca9e6530..7c6651aa9a 100644 --- a/public/language/nl/category.json +++ b/public/language/nl/category.json @@ -3,5 +3,6 @@ "no_topics": "Er zijn geen onderwerpen in deze categorie.
Waarom maak je er niet een aan?", "browsing": "verkennen", "no_replies": "Niemand heeft gereageerd", - "share_this_category": "Deel deze categorie" + "share_this_category": "Deel deze categorie", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/nl/email.json b/public/language/nl/email.json index a4bd403e2a..e662dce397 100644 --- a/public/language/nl/email.json +++ b/public/language/nl/email.json @@ -14,7 +14,7 @@ "digest.cta": "Klik hier om deze website te bezoeken %1 ", "digest.unsub.info": "Deze overzicht was verzonden naar jou vanwege je abbonement instellingen", "digest.unsub.cta": "Klik hier om u instellingen te wijzigen", - "digest.daily.no_topics": "Er zijn geen actieve topics vandaag", + "digest.daily.no_topics": "Er zijn geen actieve onderwerpen vandaag", "test.text1": "Dit is een test email om te verifiëren dat de email service correct is opgezet voor jou NodeBB", "closing": "Bedankt!" } \ No newline at end of file diff --git a/public/language/nl/error.json b/public/language/nl/error.json index b6a85567d1..173db65af9 100644 --- a/public/language/nl/error.json +++ b/public/language/nl/error.json @@ -9,14 +9,16 @@ "invalid-uid": "Ongeldig Gebruikers ID", "invalid-username": "Ongeldig Gebruikersnaam", "invalid-email": "Ongeldig Email Adres", - "invalid-title": "Ongeldig Titel!", + "invalid-title": "Ongeldige Titel!", "invalid-user-data": "Ongeldig Gebruikersdata", "invalid-password": "Ongeldig wachtwoord", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Ongeldig pagineringswaarde", "username-taken": "Gebruikersnaam is al bezet", "email-taken": "Email adres is al gebruikt", "email-not-confirmed": "U email adres is niet bevestigd, Klik hier om uw email adres te bevestigen", "username-too-short": "Gebruikersnaam is te kort", + "username-too-long": "Username too long", "user-banned": "Gebruiker verbannen", "no-category": "Categorie bestaat niet", "no-topic": "Onderwerp bestaat niet", @@ -52,5 +54,9 @@ "upload-error": "Upload Fout : %1", "signature-too-long": "Deze handtekening kan niet groter zijn dan %1 karakters!", "cant-chat-with-yourself": "Je kan niet met jezelf chatten!", - "not-enough-reputation-to-downvote": "U heeft niet de benodigde reputatie om dit bericht te downvoten" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "U heeft niet de benodigde reputatie om dit bericht te downvoten", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/nl/global.json b/public/language/nl/global.json index 94f5da88ba..446c5d35bd 100644 --- a/public/language/nl/global.json +++ b/public/language/nl/global.json @@ -50,16 +50,16 @@ "read_more": "Lees meer", "posted_ago_by_guest": "geplaatst %1 door gast", "posted_ago_by": "geplaatst %1 door %2", - "posted_ago": "geplaatst %1", - "posted_in_ago_by_guest": "geplaatst in % 1 %2 door gast", + "posted_ago": "geplaatst door %1", + "posted_in_ago_by_guest": "geplaatst in %1 %2 door gast", "posted_in_ago_by": "geplaatst in %1 %2 door %3", "posted_in_ago": "geplaatst in %1 %2", "replied_ago": "gereageerd %1", - "user_posted_ago": "%1 geplaatst %2", + "user_posted_ago": "%1 plaatste %2", "guest_posted_ago": "Gast plaatste %1", "last_edited_by_ago": "voor het laatst aangepast door %1 %2", "norecentposts": "Geen Recente Berichten", - "norecenttopics": "Geen Recente Topics", + "norecenttopics": "Geen Recente Onderwerpen", "recentposts": "Recente Berichten", "recentips": "Recente Ingelogde IPs", "away": "Afwezig", diff --git a/public/language/nl/login.json b/public/language/nl/login.json index ea7a6e3bcd..fa8f5d55d7 100644 --- a/public/language/nl/login.json +++ b/public/language/nl/login.json @@ -2,7 +2,7 @@ "username": "Gebruikersnaam / Emailadres", "remember_me": "Mij Onthouden?", "forgot_password": "Wachtwoord Vergeten?", - "alternative_logins": "Alternatieve Logins", + "alternative_logins": "Alternatieve Loginmethodes", "failed_login_attempt": "Mislukte inlog poging, probeer het later opnieuw.", "login_successful": "Je bent succesvol ingelogd!", "dont_have_account": "Heeft u nog geen account?" diff --git a/public/language/nl/notifications.json b/public/language/nl/notifications.json index 6758b7959f..6559d5df3e 100644 --- a/public/language/nl/notifications.json +++ b/public/language/nl/notifications.json @@ -10,11 +10,14 @@ "new_notification": "een nieuwe notificatie", "you_have_unread_notifications": "U heeft ongelezen notificaties", "new_message_from": "Nieuw bericht van %1", - "upvoted_your_post": "%1 heeft uw bericht geupvote", - "favourited_your_post": "%1 heeft uw bericht aan zijn favorieten toegevoegd", - "user_flagged_post": "%1 rapporteert uw bericht", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 heeft een reactie op het bericht gegeven aan %2", "user_mentioned_you_in": "%1 heeft u genoemd in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email adres bevestigd", "email-confirmed-message": "Bedankt voor het bevestigen van uw email adres. Uw account is nu volledig actief.", "email-confirm-error": "Een fout vond plaats", diff --git a/public/language/nl/recent.json b/public/language/nl/recent.json index 2bfc4af744..f111931b98 100644 --- a/public/language/nl/recent.json +++ b/public/language/nl/recent.json @@ -4,5 +4,6 @@ "week": "Week", "month": "Maand", "year": "Jaar", + "alltime": "All Time", "no_recent_topics": "Er zijn geen recente reacties." } \ No newline at end of file diff --git a/public/language/nl/search.json b/public/language/nl/search.json index b7035add16..7b1aab07ca 100644 --- a/public/language/nl/search.json +++ b/public/language/nl/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 resulta(a)ten was een match \"%2\", (%3 seconds)" + "results_matching": "%1 resulta(a)ten was een match \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/nl/topic.json b/public/language/nl/topic.json index 800d6348ca..9a9d1a2f81 100644 --- a/public/language/nl/topic.json +++ b/public/language/nl/topic.json @@ -17,7 +17,7 @@ "purge": "weggooien", "restore": "Herstellen", "move": "Verplaatsen", - "fork": "Fork", + "fork": "Afsplitsen", "banned": "verbannen", "link": "Link", "share": "Delen", @@ -36,7 +36,7 @@ "watch": "Volgen", "watch.title": "Krijg notificaties van nieuwe reacties op dit onderwerp", "share_this_post": "Deel dit Bericht", - "thread_tools.title": "Thread Gereedschap", + "thread_tools.title": "Acties", "thread_tools.markAsUnreadForAll": "Ongelezen Markeren", "thread_tools.pin": "Onderwerp Vastmaken", "thread_tools.unpin": "Onderwerp Losmaken", @@ -44,13 +44,13 @@ "thread_tools.unlock": "Onderwerp Openen", "thread_tools.move": "Onderwerp Verplaatsen", "thread_tools.move_all": "Verplaats alles", - "thread_tools.fork": "Onderwerp Forken", + "thread_tools.fork": "Onderwerp Afsplitsen", "thread_tools.delete": "Onderwerp Verwijderen", "thread_tools.delete_confirm": "Weet u het zeker dat u dit onderwerp wilt verwijderen?", "thread_tools.restore": "Onderwerp Herstellen", "thread_tools.restore_confirm": "Weet u het zeker dat u het onderwerp wilt herstellen?", - "thread_tools.purge": "Gooi onderwerp weg", - "thread_tools.purge_confirm": "Weet u het zeker dat u dit onderwerp wilt weggooien?", + "thread_tools.purge": "Wis Onderwerp ", + "thread_tools.purge_confirm": "Weet u het zeker dat u dit onderwerp wilt wissen?", "topic_move_success": "Deze onderwerp is succesvol verplaatst naar %1", "post_delete_confirm": "Weet u het zeker dat u dit bericht wilt verwijderen?", "post_restore_confirm": "Weet u het zeker dat u dit bericht wilt herstellen?", @@ -58,7 +58,7 @@ "load_categories": "Categorieën Laden", "disabled_categories_note": "Uitgeschakelde Categorieën zijn grijs", "confirm_move": "Verplaatsen", - "confirm_fork": "Fork", + "confirm_fork": "Splits", "favourite": "Favoriet", "favourites": "Favorieten", "favourites.has_no_favourites": "Je hebt geen favorieten, sla een aantal berichten op als favoriet om ze hier te zien!", @@ -67,11 +67,11 @@ "move_topics": "Verplaats onderwerpen", "move_post": "Bericht Verplaatsen", "post_moved": "Bericht verplaatst!", - "fork_topic": "Onderwerp Forken", + "fork_topic": "Afgesplitste Onderwerp ", "topic_will_be_moved_to": "Dit onderwerp zal verplaatst worden naar de categorie", "fork_topic_instruction": "Klik op de berichten die je wilt forken", "fork_no_pids": "Geen berichten geselecteerd!", - "fork_success": "Onderwerp is met succes geforkt!", + "fork_success": "Onderwerp is met succes gesplitst!", "composer.title_placeholder": "Vul de titel voor het onderwerp hier in...", "composer.discard": "Annuleren", "composer.submit": "Opslaan", @@ -84,9 +84,9 @@ "composer.thumb_file_label": "Of upload een bestand", "composer.thumb_remove": "Velden leegmaken", "composer.drag_and_drop_images": "Sleep en Zet Afbeeldingen Hier", - "more_users_and_guests": "%1 meer gebruiker(s) en %2 gast(en)", + "more_users_and_guests": "%1 of meerdere gebruiker(s) en %2 gast(en)", "more_users": "%1 meer gebruiker(s)", - "more_guests": "%1 meer gast(en)", + "more_guests": "%1 of meerdere gast(en)", "users_and_others": "%1 en %2 anderen", "sort_by": "gesorteerd op", "oldest_to_newest": "Oud naar Nieuw", diff --git a/public/language/nl/user.json b/public/language/nl/user.json index 37103e7644..df0f112c6f 100644 --- a/public/language/nl/user.json +++ b/public/language/nl/user.json @@ -4,6 +4,8 @@ "username": "Gebruikersnaam", "email": "Email", "confirm_email": "Bevestig uw email adres", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Volledige Naam", "website": "Website", "location": "Locatie", @@ -61,5 +63,7 @@ "posts_per_page": "Berichten per Pagina", "notification_sounds": "Speel een geluid af wanneer ik een notificatie ontvang.", "browsing": "Zoek Instellingen", - "open_links_in_new_tab": "Open de uitgaande links in een nieuw tabblad?" + "open_links_in_new_tab": "Open de uitgaande links in een nieuw tabblad?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/pl/category.json b/public/language/pl/category.json index 8e6707e13d..997aae19ae 100644 --- a/public/language/pl/category.json +++ b/public/language/pl/category.json @@ -3,5 +3,6 @@ "no_topics": "W tej kategorii nie ma jeszcze żadnych wątków.
Dlaczego ty nie utworzysz jakiegoś?", "browsing": "przegląda", "no_replies": "Nikt jeszcze nie odpowiedział", - "share_this_category": "Udostępnij tę kategorię" + "share_this_category": "Udostępnij tę kategorię", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/pl/email.json b/public/language/pl/email.json index 98e591ab02..2e5df85e6a 100644 --- a/public/language/pl/email.json +++ b/public/language/pl/email.json @@ -1,20 +1,20 @@ { - "password-reset-requested": "Password Reset Requested - %1!", - "welcome-to": "Welcome to %1", - "greeting_no_name": "Hello", - "greeting_with_name": "Hello %1", - "welcome.text1": "Thank you for registering with %1!", - "welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.", - "welcome.cta": "Click here to confirm your email address", - "reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.", - "reset.text2": "To continue with the password reset, please click on the following link:", - "reset.cta": "Click here to reset your password", - "digest.notifications": "You have some unread notifications from %1:", - "digest.latest_topics": "Latest topics from %1", - "digest.cta": "Click here to visit %1", - "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", - "digest.daily.no_topics": "There have been no active topics in the past day", - "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", - "closing": "Thanks!" + "password-reset-requested": "Wybrano przywrócenie hasła - %1", + "welcome-to": "Witaj w %1", + "greeting_no_name": "Witaj", + "greeting_with_name": "Witaj %1", + "welcome.text1": "Dziękujemy za rejestrację w %1", + "welcome.text2": "Aby aktywować swoje konto, musisz potwierdzić, że skorzystałeś z własnego adresu e-mail.", + "welcome.cta": "Kliknij tutaj, by potwierdzić swój adres", + "reset.text1": "Otrzymaliśmy żądanie przywrócenia Twojego hasła. Jeśli nie żądałeś przywrócenia hasła, zignoruj ten e-mail.", + "reset.text2": "Aby przywrócić swoje hasło, skorzystaj z poniższego linku:", + "reset.cta": "Kliknij tu, by przywrócić swoje hasło", + "digest.notifications": "Masz nieprzeczytane powiadomienia z %1:", + "digest.latest_topics": "Ostatnie tematy z %1", + "digest.cta": "Kliknij, by odwiedzić %1", + "digest.unsub.info": "To podsumowanie zostało wysłane zgodnie z Twoimi ustawieniami.", + "digest.unsub.cta": "Kliknij tutaj, aby je zmienić", + "digest.daily.no_topics": "Wczoraj nie było żadnych aktywnych tematów", + "test.text1": "To jest e-mail testowy, aby sprawdzić, czy poprawnie skonfigurowałeś e-mailer w swoim NodeBB.", + "closing": "Dziękujemy!" } \ No newline at end of file diff --git a/public/language/pl/error.json b/public/language/pl/error.json index e0df9469bb..75fd7e8daa 100644 --- a/public/language/pl/error.json +++ b/public/language/pl/error.json @@ -12,11 +12,13 @@ "invalid-title": "Błędny tytuł.", "invalid-user-data": "Błędne dane użytkownika.", "invalid-password": "Błędne hasło", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Błędna wartość paginacji", "username-taken": "Login zajęty.", "email-taken": "E-mail zajęty.", "email-not-confirmed": "Twój email nie jest potwierdzony, kliknij tutaj aby go potwierdzić.", "username-too-short": "Nazwa użytkownika za krótka.", + "username-too-long": "Username too long", "user-banned": "Użytkownik zbanowany", "no-category": "Kategoria nie istnieje.", "no-topic": "Temat nie istnieje", @@ -25,7 +27,7 @@ "no-user": "Użytkownik nie istnieje", "no-teaser": "Podgląd nie istnieje", "no-privileges": "Nie masz wystarczających praw by to wykonać.", - "no-emailers-configured": "No email plugins were loaded, so a test email could not be sent", + "no-emailers-configured": "Nie zainstalowano żadnego dodatku obsługującego e-mail, więc nie można wysłać testowej wiadomości.", "category-disabled": "Kategoria wyłączona.", "topic-locked": "Temat zamknięty", "still-uploading": "Poczekaj na pełne załadowanie", @@ -52,5 +54,9 @@ "upload-error": "Błąd uploadu: %1", "signature-too-long": "Sygnatura nie może mieć więcej niż %1 znaków.", "cant-chat-with-yourself": "Nie możesz czatować ze sobą", - "not-enough-reputation-to-downvote": "Masz za mało reputacji by ocenić ten post." + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Masz za mało reputacji by ocenić ten post.", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/pl/global.json b/public/language/pl/global.json index 84ac6226d5..6a4b6c40b2 100644 --- a/public/language/pl/global.json +++ b/public/language/pl/global.json @@ -18,7 +18,7 @@ "save_changes": "Zapisz zmiany", "close": "Zamknij", "pagination": "Numerowanie stron", - "pagination.out_of": "%1 poza %2", + "pagination.out_of": "%1 z %2", "pagination.enter_index": "Wpisz indeks.", "header.admin": "Administracja", "header.recent": "Ostatnie", diff --git a/public/language/pl/groups.json b/public/language/pl/groups.json index c00c111e11..ecce894b28 100644 --- a/public/language/pl/groups.json +++ b/public/language/pl/groups.json @@ -1,7 +1,7 @@ { - "view_group": "View Group", - "details.title": "Group Details", - "details.members": "Member List", - "details.has_no_posts": "This group's members have not made any posts.", - "details.latest_posts": "Latest Posts" + "view_group": "Obejrzyj grupę", + "details.title": "Szczegóły grupy", + "details.members": "Lista członków", + "details.has_no_posts": "Członkowie tej grupy nie napisali żadnych postów.", + "details.latest_posts": "Ostatnie posty" } \ No newline at end of file diff --git a/public/language/pl/modules.json b/public/language/pl/modules.json index e63c958dc9..154ae27501 100644 --- a/public/language/pl/modules.json +++ b/public/language/pl/modules.json @@ -14,5 +14,5 @@ "chat.maximize": "Maksymalizuj", "composer.user_said_in": "%1 powiedział w %2:", "composer.user_said": "%1 powiedział:", - "composer.discard": "Na pewno chcesz ignorować ten post?" + "composer.discard": "Na pewno chcesz porzucić ten post?" } \ No newline at end of file diff --git a/public/language/pl/notifications.json b/public/language/pl/notifications.json index 493b232147..c715ae9567 100644 --- a/public/language/pl/notifications.json +++ b/public/language/pl/notifications.json @@ -2,19 +2,22 @@ "title": "Powiadomienia", "no_notifs": "Nie masz nowych powiadomień", "see_all": "Zobacz wszystkie powiadomienia", - "back_to_home": "Back to %1", + "back_to_home": "Wróć do %1", "outgoing_link": "Łącze wychodzące", - "outgoing_link_message": "You are now leaving %1.", + "outgoing_link_message": "Opuszczasz %1.", "continue_to": "Continue to %1", "return_to": "Return to %1", "new_notification": "Nowe powiadomienie", "you_have_unread_notifications": "Masz nieprzeczytane powiadomienia.", "new_message_from": "Nowa wiadomość od %1", - "upvoted_your_post": "%1
zagłosował na Twój post", - "favourited_your_post": "%1 polubił/a Twój post.", - "user_flagged_post": "%1 oznaczył/a Twój post", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 dodał odpowiedź do %2", - "user_mentioned_you_in": "%1 mentioned you in %2", + "user_mentioned_you_in": "%1 wspomniał cię w %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "E-mail potwierdzony", "email-confirmed-message": "Dziękujemy za potwierdzenie maila. Twoje konto zostało aktywowane.", "email-confirm-error": "Wystąpił błąd.", diff --git a/public/language/pl/pages.json b/public/language/pl/pages.json index fb43e50c1a..02e459b55a 100644 --- a/public/language/pl/pages.json +++ b/public/language/pl/pages.json @@ -5,7 +5,7 @@ "recent": "Ostatnie wątki", "users": "Zarejestrowani użytkownicy", "notifications": "Powiadomienia", - "tags": "Topics tagged under \"%1\"", + "tags": "Tematy oznaczone \"%1\"", "user.edit": "Edytowanie \"%1\"", "user.following": "Obserwowani przez %1", "user.followers": "Obserwujący %1", diff --git a/public/language/pl/recent.json b/public/language/pl/recent.json index 74050bc028..8f92e35c6a 100644 --- a/public/language/pl/recent.json +++ b/public/language/pl/recent.json @@ -3,6 +3,7 @@ "day": "Dzień", "week": "Tydzień", "month": "Miesiąc", - "year": "Year", + "year": "Rok", + "alltime": "All Time", "no_recent_topics": "Brak ostatnich wątków." } \ No newline at end of file diff --git a/public/language/pl/search.json b/public/language/pl/search.json index d0ffc64f36..2a9252fdab 100644 --- a/public/language/pl/search.json +++ b/public/language/pl/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 wyników pasujących do \"%2\", (%3 sekund)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/pl/tags.json b/public/language/pl/tags.json index f065d4bbfa..d4b35e3b39 100644 --- a/public/language/pl/tags.json +++ b/public/language/pl/tags.json @@ -1,6 +1,6 @@ { - "no_tag_topics": "There are no topics with this tag.", - "tags": "Tags", - "enter_tags_here": "Enter tags here. Press enter after each tag.", - "no_tags": "There are no tags yet." + "no_tag_topics": "Nie ma tematów z tym tagiem", + "tags": "Tagi", + "enter_tags_here": "Tutaj wpisz tagi. Naciśnij enter po każdym.", + "no_tags": "Jeszcze nie ma tagów." } \ No newline at end of file diff --git a/public/language/pl/topic.json b/public/language/pl/topic.json index bcb2ad0721..6ef02c02a4 100644 --- a/public/language/pl/topic.json +++ b/public/language/pl/topic.json @@ -14,7 +14,7 @@ "reply": "Odpowiedz", "edit": "Edytuj", "delete": "Usuń", - "purge": "Purge", + "purge": "Wyczyść", "restore": "Przywróć", "move": "Przenieś", "fork": "Skopiuj", @@ -23,7 +23,7 @@ "share": "Udostępnij", "tools": "Narzędzia", "flag": "Zgłoś", - "locked": "Locked", + "locked": "Zablokowany", "bookmark_instructions": "Kliknij tutaj, aby wrócić do ostatniej pozycji lub zamknij, aby odrzucić.", "flag_title": "Zgłoś post do moderacji", "flag_confirm": "Na pewno chcesz oznaczyć ten post?", @@ -49,12 +49,12 @@ "thread_tools.delete_confirm": "Na pewno chcesz usunąć ten wątek?", "thread_tools.restore": "Przywróć wątek", "thread_tools.restore_confirm": "Na pewno chcesz przywrócić ten wątek?", - "thread_tools.purge": "Purge Topic", - "thread_tools.purge_confirm": "Are you sure you want to purge this thread?", + "thread_tools.purge": "Wyczyść wątek", + "thread_tools.purge_confirm": "Jesteś pewien, że chcesz wyczyścić ten wątek?", "topic_move_success": "Temat przeniesiono do %1", "post_delete_confirm": "Na pewno chcesz usunąć ten post?", "post_restore_confirm": "Na pewno chcesz przywrócić ten post?", - "post_purge_confirm": "Are you sure you want to purge this post?", + "post_purge_confirm": "Jesteś pewien, że chcesz wyczyścić ten post?", "load_categories": "Ładowanie kategorii", "disabled_categories_note": "Zablokowane kategorie zostały wyszarzone.", "confirm_move": "Przenieś", @@ -87,9 +87,9 @@ "more_users_and_guests": "%1 więcej użytkownik(ów) i %2 gośc(i)", "more_users": "%1 więcej użytkownik(ów)", "more_guests": "%1 więcej gośc(i)", - "users_and_others": "%1 and %2 others", - "sort_by": "Sort by", - "oldest_to_newest": "Oldest to Newest", - "newest_to_oldest": "Newest to Oldest", - "most_votes": "Most votes" + "users_and_others": "%1 i %2 innych", + "sort_by": "Sortuj po", + "oldest_to_newest": "Najpierw najstarsze", + "newest_to_oldest": "Najpierw najnowsze", + "most_votes": "Najwięcej głosów" } \ No newline at end of file diff --git a/public/language/pl/user.json b/public/language/pl/user.json index ceb114e4af..65a0258933 100644 --- a/public/language/pl/user.json +++ b/public/language/pl/user.json @@ -3,7 +3,9 @@ "offline": "Offline", "username": "Nazwa użytkownika", "email": "Adres e-mail", - "confirm_email": "Confirm Email", + "confirm_email": "Potwierdź e-mail", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Pełna nazwa", "website": "Strona WWW", "location": "Położenie", @@ -37,7 +39,7 @@ "change_password_success": "Twoje hasło jest zaktualizowane!", "confirm_password": "Potwierdź hasło", "password": "Hasło", - "username_taken_workaround": "Login jakiego chciałeś/aś użyć jest już zajęty, ale my to załatwimy. Jesteś znany/a jako %1", + "username_taken_workaround": "Wybrany login jest już zajęty, więc zmieniliśmy go trochę. Proponujemy %1", "upload_picture": "Prześlij zdjęcie", "upload_a_picture": "Prześlij zdjęcie", "image_spec": "Możesz przesłać tylko pliki PNG, JPG lub GIF.", @@ -61,5 +63,7 @@ "posts_per_page": "Postów na stronę", "notification_sounds": "Odtwórz dźwięk po otrzymaniu powiadomienia.", "browsing": "Ustawienia szukania", - "open_links_in_new_tab": "Otwierać linki zewnętrzne w nowych kartach?" + "open_links_in_new_tab": "Otwierać linki zewnętrzne w nowych kartach?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/pl/users.json b/public/language/pl/users.json index 6a12eb61d4..1c87248f14 100644 --- a/public/language/pl/users.json +++ b/public/language/pl/users.json @@ -5,6 +5,6 @@ "search": "Szukaj", "enter_username": "Wpisz nazwę użytkownika", "load_more": "Więcej", - "user-not-found": "User not found!", - "users-found-search-took": "%1 user(s) found! Search took %2 ms." + "user-not-found": "Nie znaleziono użytkownika!", + "users-found-search-took": "Znaleziono %1 użytkowników. Szukanie zajęło %2 ms." } \ No newline at end of file diff --git a/public/language/pt_BR/category.json b/public/language/pt_BR/category.json index 7b63409f19..13a29a5a02 100644 --- a/public/language/pt_BR/category.json +++ b/public/language/pt_BR/category.json @@ -3,5 +3,6 @@ "no_topics": "Não tem nenhum tópico nesta categoria.
Por que não tenta postar o primeiro?", "browsing": "navegando", "no_replies": "Ninguém respondeu", - "share_this_category": "Compartilhar" + "share_this_category": "Compartilhar", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/pt_BR/error.json b/public/language/pt_BR/error.json index 9dca9b0ae2..dd6fe32c3c 100644 --- a/public/language/pt_BR/error.json +++ b/public/language/pt_BR/error.json @@ -12,11 +12,13 @@ "invalid-title": "Título inválido.", "invalid-user-data": "Informação de usuário inválida", "invalid-password": "Senha inválida", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Informação inválida de paginação", "username-taken": "Usuário já existe", "email-taken": "Email já foi utilizado em um cadastro", "email-not-confirmed": "Seu email não está confirmado, por favor, clique aqui para confirmá-lo", "username-too-short": "Nome de usuário muito curto", + "username-too-long": "Username too long", "user-banned": "Usuário banido", "no-category": "Categoria não existe", "no-topic": "Tópico não existe", @@ -52,5 +54,9 @@ "upload-error": "Erro de Upload : %1", "signature-too-long": "Assinatura não pode conter mais que %1 caracteres!", "cant-chat-with-yourself": "Impossível bater papo consigo mesmo!", - "not-enough-reputation-to-downvote": "Você não possui reputação suficiente para negativar este post" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Você não possui reputação suficiente para negativar este post", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/pt_BR/notifications.json b/public/language/pt_BR/notifications.json index 08a4240c19..fc82e93866 100644 --- a/public/language/pt_BR/notifications.json +++ b/public/language/pt_BR/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Nova notificação", "you_have_unread_notifications": "Você possui notificações não lidas.", "new_message_from": "Nova mensagem de %1", - "upvoted_your_post": "%1 votou no seu post.", - "favourited_your_post": "%1 favoritou seu post.", - "user_flagged_post": "%1 sinalizou seu post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 respondeu para: %2", "user_mentioned_you_in": "%1 mensionou você em %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmado", "email-confirmed-message": "Obrigado por validar seu email. Sua conta foi ativada.", "email-confirm-error": "Ocorreu um erro...", diff --git a/public/language/pt_BR/pages.json b/public/language/pt_BR/pages.json index b700cccb53..48c03f52d9 100644 --- a/public/language/pt_BR/pages.json +++ b/public/language/pt_BR/pages.json @@ -5,7 +5,7 @@ "recent": "Tópicos Recentes", "users": "Usuários Registrados", "notifications": "Notificações", - "tags": "Topics tagged under \"%1\"", + "tags": "Tópicos com a tag sob \"%1\"", "user.edit": "Editando \"%1\"", "user.following": "Seguidos por %1", "user.followers": "Seguidores de %1", diff --git a/public/language/pt_BR/recent.json b/public/language/pt_BR/recent.json index 27a5e4e108..3185b1419b 100644 --- a/public/language/pt_BR/recent.json +++ b/public/language/pt_BR/recent.json @@ -4,5 +4,6 @@ "week": "Semana", "month": "Mês", "year": "Ano", + "alltime": "All Time", "no_recent_topics": "Nenhum tópico recente." } \ No newline at end of file diff --git a/public/language/pt_BR/search.json b/public/language/pt_BR/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/pt_BR/search.json +++ b/public/language/pt_BR/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/pt_BR/topic.json b/public/language/pt_BR/topic.json index eaa541ed33..8a4912a100 100644 --- a/public/language/pt_BR/topic.json +++ b/public/language/pt_BR/topic.json @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 mais usuário(s) e %2 visitante(s)", "more_users": "%1 mais usuário(s)", "more_guests": "%1 mais visitante(s)", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 e %2 outros", "sort_by": "Ordenar por", "oldest_to_newest": "Mais Antigo para Recente", "newest_to_oldest": "Recente para mais Antigo", diff --git a/public/language/pt_BR/user.json b/public/language/pt_BR/user.json index 8ecaf1e00b..366c291a5d 100644 --- a/public/language/pt_BR/user.json +++ b/public/language/pt_BR/user.json @@ -4,6 +4,8 @@ "username": "Usuário", "email": "Email", "confirm_email": "Confirmar Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nome Completo", "website": "Website", "location": "Localização", @@ -61,5 +63,7 @@ "posts_per_page": "Posts por Página", "notification_sounds": "Tocar um som quando receber notificação.", "browsing": "Configurações de Navegação", - "open_links_in_new_tab": "Abrir links externos em nova aba?" + "open_links_in_new_tab": "Abrir links externos em nova aba?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/ro/category.json b/public/language/ro/category.json index fbd7cd2393..8c5034e4fd 100644 --- a/public/language/ro/category.json +++ b/public/language/ro/category.json @@ -3,5 +3,6 @@ "no_topics": "Nu există nici un subiect de discuție în această categorie.
De ce nu încerci să postezi tu unul?", "browsing": "navighează", "no_replies": "Nu a răspuns nimeni", - "share_this_category": "Distribuie această categorie" + "share_this_category": "Distribuie această categorie", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ro/error.json b/public/language/ro/error.json index 5b54c36e72..f8346aa636 100644 --- a/public/language/ro/error.json +++ b/public/language/ro/error.json @@ -12,11 +12,13 @@ "invalid-title": "Titlu invalid!", "invalid-user-data": "Date utilizator invalide", "invalid-password": "Parolă Invalidă", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Date paginație invalide", "username-taken": "Numele de utilizator este deja folosit", "email-taken": "Adresa de email este deja folostă", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Numele de utilizator este prea scurt", + "username-too-long": "Username too long", "user-banned": "Utilizator banat", "no-category": "Categoria nu există", "no-topic": "Subiectul nu există", @@ -52,5 +54,9 @@ "upload-error": "Eroare Upload : %1", "signature-too-long": "Semnătura ta nu poate fi mai lungă de %1 caractere!", "cant-chat-with-yourself": "Nu poți conversa cu tine!", - "not-enough-reputation-to-downvote": "Nu ai destulă reputație pentru a vota negativ acest post." + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Nu ai destulă reputație pentru a vota negativ acest post.", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/ro/notifications.json b/public/language/ro/notifications.json index 682cb05ee2..568af20877 100644 --- a/public/language/ro/notifications.json +++ b/public/language/ro/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Notificare Nouă", "you_have_unread_notifications": "Ai notificări necitite.", "new_message_from": "Un mesaj nou de la %1", - "upvoted_your_post": "%1 a votat pozitiv mesajul tău.", - "favourited_your_post": "%1 a adăugat mesajul tău la favorite.", - "user_flagged_post": "%1 a semnalizat un mesaj.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 a postat un răspuns la: %2", "user_mentioned_you_in": "%1 te-a menționat în %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email confirmat", "email-confirmed-message": "Îți mulțumim pentru validarea emailului. Contul tău este acuma activat.", "email-confirm-error": "S-a produs o eroare ...", diff --git a/public/language/ro/recent.json b/public/language/ro/recent.json index b17702e5e9..c0600afba9 100644 --- a/public/language/ro/recent.json +++ b/public/language/ro/recent.json @@ -4,5 +4,6 @@ "week": "Săptămână", "month": "Lună", "year": "An", + "alltime": "All Time", "no_recent_topics": "Nu există subiecte recente." } \ No newline at end of file diff --git a/public/language/ro/search.json b/public/language/ro/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/ro/search.json +++ b/public/language/ro/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ro/topic.json b/public/language/ro/topic.json index eccb976288..0463625d25 100644 --- a/public/language/ro/topic.json +++ b/public/language/ro/topic.json @@ -54,7 +54,7 @@ "topic_move_success": "Acest mesaj a fost mutat cu succes în %1", "post_delete_confirm": "Ești sigur că vrei să ștergi acest mesaj?", "post_restore_confirm": "Esti sigur că vrei să restaurezi acest mesaj?", - "post_purge_confirm": "Are you sure you want to purge this post?", + "post_purge_confirm": "Ești sigur că vrei să cureți acest mesaj?", "load_categories": "Se Încarcă Categoriile", "disabled_categories_note": "Categoriile dezactivate sunt decolorate cu gri", "confirm_move": "Mută", @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 utlizator(i) și %2 vizitator(i)", "more_users": "%1 utilizator(i)", "more_guests": "%1 vizitator(i)", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 și alți %2", "sort_by": "Sortează de la", "oldest_to_newest": "Vechi la Noi", "newest_to_oldest": "Noi la Vechi", diff --git a/public/language/ro/user.json b/public/language/ro/user.json index 19de3dccf8..124f9076b6 100644 --- a/public/language/ro/user.json +++ b/public/language/ro/user.json @@ -4,6 +4,8 @@ "username": "Nume utilizator", "email": "Adresă Email", "confirm_email": "Confirmă Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nume Întreg", "website": "Pagină Web", "location": "Locație", @@ -61,5 +63,7 @@ "posts_per_page": "Mesaje pe pagină", "notification_sounds": "Redă un sunet când primești o notificare.", "browsing": "Setări navigare", - "open_links_in_new_tab": "Deschide linkurile externe intr-un tab nou?" + "open_links_in_new_tab": "Deschide linkurile externe intr-un tab nou?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/ru/category.json b/public/language/ru/category.json index 9248f1cfd9..9454af6989 100644 --- a/public/language/ru/category.json +++ b/public/language/ru/category.json @@ -3,5 +3,6 @@ "no_topics": "В этой категории еще нет тем.
Почему бы вам не создать первую?", "browsing": "просматривают", "no_replies": "Нет ответов", - "share_this_category": "Поделиться этой категорией" + "share_this_category": "Поделиться этой категорией", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/ru/error.json b/public/language/ru/error.json index 63a6a93355..875a018f95 100644 --- a/public/language/ru/error.json +++ b/public/language/ru/error.json @@ -12,11 +12,13 @@ "invalid-title": "Неверный заголовок!", "invalid-user-data": "Неверные Пользовательские Данные", "invalid-password": "Неверный Пароль", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Неверное значение пагинации", "username-taken": "Имя пользователя занято", "email-taken": "Email занят", "email-not-confirmed": "Ваш email не подтвержден, нажмите для подтверждения.", "username-too-short": "Слишком короткое имя пользователя", + "username-too-long": "Username too long", "user-banned": "Пользователь заблокирован", "no-category": "Несуществующая категория", "no-topic": "Несуществующая тема", @@ -52,5 +54,9 @@ "upload-error": "Ошибка загрузки : %1", "signature-too-long": "Подпись не может быть длиннее %1 символов", "cant-chat-with-yourself": "Вы не можете общаться с самим собой", - "not-enough-reputation-to-downvote": "У Вас недостаточно репутации для понижения оценки поста" + "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", + "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." } \ No newline at end of file diff --git a/public/language/ru/notifications.json b/public/language/ru/notifications.json index 1648ebc8f8..0bd4597dd7 100644 --- a/public/language/ru/notifications.json +++ b/public/language/ru/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Новое Уведомление", "you_have_unread_notifications": "У вас есть непрочитанные уведомления", "new_message_from": "Новое сообщение от %1", - "upvoted_your_post": "%1 проголосовал за Ваш пост", - "favourited_your_post": "%1 добавил Ваш пост в избранное", - "user_flagged_post": "%1 пометил пост", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 ответил на запись: %2", "user_mentioned_you_in": "%1 упомянул вас в %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Подтвержден", "email-confirmed-message": "Спасибо за подтверждение Вашего Email-адреса. Ваш аккаунт активирован.", "email-confirm-error": "Произошла ошибка...", diff --git a/public/language/ru/recent.json b/public/language/ru/recent.json index 7dabef695e..428c2c6b3d 100644 --- a/public/language/ru/recent.json +++ b/public/language/ru/recent.json @@ -4,5 +4,6 @@ "week": "Неделя", "month": "Месяц", "year": "Год", + "alltime": "All Time", "no_recent_topics": "Нет свежих тем." } \ No newline at end of file diff --git a/public/language/ru/search.json b/public/language/ru/search.json index 5f0a069bef..17b82606bd 100644 --- a/public/language/ru/search.json +++ b/public/language/ru/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 результатов по фразе \"%2\", (%3 секунды) " + "results_matching": "%1 результатов по фразе \"%2\", (%3 секунды) ", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/ru/user.json b/public/language/ru/user.json index 6f3e7c92e2..6da3902849 100644 --- a/public/language/ru/user.json +++ b/public/language/ru/user.json @@ -4,6 +4,8 @@ "username": "Имя пользователя", "email": "Email", "confirm_email": "Подтвердить Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Полное имя", "website": "Сайт", "location": "Откуда", @@ -61,5 +63,7 @@ "posts_per_page": "Постов на Странице", "notification_sounds": "Звук при получении уведомления", "browsing": "Настройки просмотра", - "open_links_in_new_tab": "Открывать ссылки, ведущие на другие сайты, в новой вкладке?" + "open_links_in_new_tab": "Открывать ссылки, ведущие на другие сайты, в новой вкладке?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/sc/category.json b/public/language/sc/category.json index d249aa6ffd..35e7f7b522 100644 --- a/public/language/sc/category.json +++ b/public/language/sc/category.json @@ -3,5 +3,6 @@ "no_topics": "Non bi sunt arresonadas in custa creze.
Pro ite non nde pones una?", "browsing": "navighende", "no_replies": "Perunu at rispostu", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/sc/error.json b/public/language/sc/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/sc/error.json +++ b/public/language/sc/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/sc/notifications.json b/public/language/sc/notifications.json index c5c59c39e1..0fecd4d1a7 100644 --- a/public/language/sc/notifications.json +++ b/public/language/sc/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/sc/recent.json b/public/language/sc/recent.json index b6d27107b3..2e2d9401c7 100644 --- a/public/language/sc/recent.json +++ b/public/language/sc/recent.json @@ -4,5 +4,6 @@ "week": "Chida", "month": "Mese", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Non bi sunt ùrtimas arresonadas." } \ No newline at end of file diff --git a/public/language/sc/search.json b/public/language/sc/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/sc/search.json +++ b/public/language/sc/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/sc/user.json b/public/language/sc/user.json index d1dfdd8b2e..7c8781dfb8 100644 --- a/public/language/sc/user.json +++ b/public/language/sc/user.json @@ -4,6 +4,8 @@ "username": "Nùmene de Impitadore", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Nùmene e Sambenadu", "website": "Giassu web", "location": "Logu", @@ -61,5 +63,7 @@ "posts_per_page": "Arresonos pro Pàgina", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/sk/category.json b/public/language/sk/category.json index e804178494..ead803aae6 100644 --- a/public/language/sk/category.json +++ b/public/language/sk/category.json @@ -3,5 +3,6 @@ "no_topics": "V tejto kategórií zatiaľ nie sú žiadne príspevky.
Môžeš byť prvý!", "browsing": "prehliada", "no_replies": "Nikdo ešte neodpovedal", - "share_this_category": "zdielaj túto kategóriu" + "share_this_category": "zdielaj túto kategóriu", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/sk/error.json b/public/language/sk/error.json index 8481519d05..08c0106813 100644 --- a/public/language/sk/error.json +++ b/public/language/sk/error.json @@ -12,11 +12,13 @@ "invalid-title": "Nesprávny titulok!", "invalid-user-data": "Neplatné užívatelské údaje", "invalid-password": "Nesprávne heslo", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Nesprávna hodnota stránkovania", "username-taken": "Užívateľske meno je obsadené", "email-taken": "Email je obsadený", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "Užívateľ je zakázaný", "no-category": "Kategória neexistuje", "no-topic": "Téme neexistuje", @@ -52,5 +54,9 @@ "upload-error": "Upload chyba: %1", "signature-too-long": "Podpis nesmie byť dlhší ako %1 znakov!", "cant-chat-with-yourself": "Nemôžete chatovat so samým sebou.", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/sk/notifications.json b/public/language/sk/notifications.json index 7a5b20cbb7..cffd1a1fc0 100644 --- a/public/language/sk/notifications.json +++ b/public/language/sk/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Nová notifikácia", "you_have_unread_notifications": "Máte neprečítané notifikácie", "new_message_from": "Nova spáva od %1", - "upvoted_your_post": "%1 zahlasoval za Váš príspevok.", - "favourited_your_post": "%1 pridal do obľubených Váš príspevok.", - "user_flagged_post": "%1 označil Váš príspevok", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 odpovedal: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email bol potvrdený", "email-confirmed-message": "Ďakujeme za potvrdenie tvojho emailu. Účet je plne aktivovaný.", "email-confirm-error": "Vyskytla sa chyba...", diff --git a/public/language/sk/recent.json b/public/language/sk/recent.json index cfb6b18bc5..963740ba54 100644 --- a/public/language/sk/recent.json +++ b/public/language/sk/recent.json @@ -4,5 +4,6 @@ "week": "Týždeň", "month": "Mesiac", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Nie sú žiadne posledné témy" } \ No newline at end of file diff --git a/public/language/sk/search.json b/public/language/sk/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/sk/search.json +++ b/public/language/sk/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/sk/user.json b/public/language/sk/user.json index 3a42def9f0..cefdf45dfe 100644 --- a/public/language/sk/user.json +++ b/public/language/sk/user.json @@ -4,6 +4,8 @@ "username": "Uživateľské meno", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Meno a priezvisko", "website": "Webová stránka", "location": "Poloha", @@ -61,5 +63,7 @@ "posts_per_page": "Príspevkov na stranu", "notification_sounds": "Prehraj zvuk ked príde notifikácia", "browsing": "Hľadaj v nadstaveniach", - "open_links_in_new_tab": "Otvoriť tieto odkazy v novom tabe ?" + "open_links_in_new_tab": "Otvoriť tieto odkazy v novom tabe ?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/sv/category.json b/public/language/sv/category.json index 25b9f9fa83..c9662de9c0 100644 --- a/public/language/sv/category.json +++ b/public/language/sv/category.json @@ -3,5 +3,6 @@ "no_topics": "Det finns inga ämnen i denna kategori.
Varför inte skapa ett?", "browsing": "läser", "no_replies": "Ingen har svarat", - "share_this_category": "Dela den här kategorin" + "share_this_category": "Dela den här kategorin", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/sv/error.json b/public/language/sv/error.json index 8de10daaae..2c10713a84 100644 --- a/public/language/sv/error.json +++ b/public/language/sv/error.json @@ -12,11 +12,13 @@ "invalid-title": "Ogiltig rubrik.", "invalid-user-data": "Ogiltig användardata", "invalid-password": "Ogiltigt lösenord", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Ogiltigt sidnummer", "username-taken": "Användarnamn upptaget", "email-taken": "Epostadress upptagen", "email-not-confirmed": "Din epostadress är ännu inte bekräftad. Klicka här för att bekräfta din epostadress.", "username-too-short": "Användarnamnet är för kort", + "username-too-long": "Username too long", "user-banned": "Användare bannad", "no-category": "Kategori hittades inte", "no-topic": "Ämne hittades inte", @@ -52,5 +54,9 @@ "upload-error": "Fel vid uppladdning: %1", "signature-too-long": "Signaturer kan inte vara längre än %1 tecken.", "cant-chat-with-yourself": "Du kan inte chatta med dig själv.", - "not-enough-reputation-to-downvote": "Du har inte tillräckligt förtroende för att rösta ner det här meddelandet" + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Du har inte tillräckligt förtroende för att rösta ner det här meddelandet", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/sv/notifications.json b/public/language/sv/notifications.json index 9f262b008a..267c761ba5 100644 --- a/public/language/sv/notifications.json +++ b/public/language/sv/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Ny notis", "you_have_unread_notifications": "Du har olästa notiser.", "new_message_from": "Nytt medelande från %1", - "upvoted_your_post": "%1 har röstat på ditt inlägg.", - "favourited_your_post": "%1 har favoriserat ditt inlägg.", - "user_flagged_post": "%1 flaggade ett inlägg.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 har skrivit ett svar på: %2", "user_mentioned_you_in": "%1 nämnde dig i %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Epost bekräftad", "email-confirmed-message": "Tack för att du bekräftat din epostadress. Ditt konto är nu fullt ut aktiverat.", "email-confirm-error": "Ett fel uppstod...", diff --git a/public/language/sv/recent.json b/public/language/sv/recent.json index 4478c47921..f9e04c9081 100644 --- a/public/language/sv/recent.json +++ b/public/language/sv/recent.json @@ -4,5 +4,6 @@ "week": "Vecka", "month": "Månad", "year": "År", + "alltime": "All Time", "no_recent_topics": "Det finns inga olästa ämnen." } \ No newline at end of file diff --git a/public/language/sv/search.json b/public/language/sv/search.json index 996a7d81fd..49e8bde9a0 100644 --- a/public/language/sv/search.json +++ b/public/language/sv/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 resultat matchar \"%2\", (%3 sekunder)" + "results_matching": "%1 resultat matchar \"%2\", (%3 sekunder)", + "no-matches": "Inga inlägg hittades" } \ No newline at end of file diff --git a/public/language/sv/user.json b/public/language/sv/user.json index a6b3a753fb..e4e4c01dcb 100644 --- a/public/language/sv/user.json +++ b/public/language/sv/user.json @@ -4,6 +4,8 @@ "username": "Användarnamn", "email": "Epost", "confirm_email": "Bekräfta epostadress ", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Hela namnet", "website": "Webbsida", "location": "Plats", @@ -61,5 +63,7 @@ "posts_per_page": "Inlägg per sida", "notification_sounds": "Spela ett ljud när du får en notis.", "browsing": "Inställning för bläddring", - "open_links_in_new_tab": "Öppna utgående länkar på ny flik?" + "open_links_in_new_tab": "Öppna utgående länkar på ny flik?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/th/category.json b/public/language/th/category.json index 790f7752fc..31246e2a05 100644 --- a/public/language/th/category.json +++ b/public/language/th/category.json @@ -3,5 +3,6 @@ "no_topics": "ยังไม่มีกระทู้ในหมวดนี้
โพสต์กระทู้แรก?", "browsing": "เรียกดู", "no_replies": "ยังไม่มีใครตอบ", - "share_this_category": "Share this category" + "share_this_category": "Share this category", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/th/error.json b/public/language/th/error.json index 77c582b23f..26e3c9d80c 100644 --- a/public/language/th/error.json +++ b/public/language/th/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Invalid User Data", "invalid-password": "Invalid Password", + "invalid-username-or-password": "Please specify both a username and password", "invalid-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.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "User banned", "no-category": "Category doesn't exist", "no-topic": "Topic doesn't exist", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Signature can't be longer than %1 characters!", "cant-chat-with-yourself": "You can't chat with yourself!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/th/notifications.json b/public/language/th/notifications.json index 4c33f78276..d78ad8e8f6 100644 --- a/public/language/th/notifications.json +++ b/public/language/th/notifications.json @@ -10,11 +10,14 @@ "new_notification": "New Notification", "you_have_unread_notifications": "You have unread notifications.", "new_message_from": "New message from %1", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/th/recent.json b/public/language/th/recent.json index c7a2e6bc19..05eec4d503 100644 --- a/public/language/th/recent.json +++ b/public/language/th/recent.json @@ -4,5 +4,6 @@ "week": "สัปดาห์", "month": "เดือน", "year": "Year", + "alltime": "All Time", "no_recent_topics": "ไม่มีกระทู้ล่าสุด" } \ No newline at end of file diff --git a/public/language/th/search.json b/public/language/th/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/th/search.json +++ b/public/language/th/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/th/user.json b/public/language/th/user.json index 9f1e022fd1..f6d6861e31 100644 --- a/public/language/th/user.json +++ b/public/language/th/user.json @@ -4,6 +4,8 @@ "username": "ชื่อผู้ใช้", "email": "อีเมล์", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "ชื่อเต็ม", "website": "เว็บไซต์", "location": "สถานที่", @@ -61,5 +63,7 @@ "posts_per_page": "จำนวนโพสต์ต่อหน้า", "notification_sounds": "Play a sound when you receive a notification.", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/tr/category.json b/public/language/tr/category.json index 7ec2a32e14..9fae15699d 100644 --- a/public/language/tr/category.json +++ b/public/language/tr/category.json @@ -3,5 +3,6 @@ "no_topics": " Bu kategoride hiç konu yok.
Yeni bir konu açmak istemez misiniz?", "browsing": "dolaşıyor", "no_replies": "Kimse yanıtlamadı", - "share_this_category": "Bu kategoriyi paylaş" + "share_this_category": "Bu kategoriyi paylaş", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/tr/error.json b/public/language/tr/error.json index cec4db9683..6c6a37053a 100644 --- a/public/language/tr/error.json +++ b/public/language/tr/error.json @@ -12,11 +12,13 @@ "invalid-title": "Geçersiz başlık!", "invalid-user-data": "Geçersiz Kullancı Verisi", "invalid-password": "Geçersiz Şifre", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Geçersiz Sayfa Değeri", "username-taken": "Kullanıcı İsmi Alınmış", "email-taken": "E-posta Alınmış", "email-not-confirmed": "E-postanız onaylanmamış, onaylamak için lütfen buraya tıklayın.", "username-too-short": "Kullanıcı ismi çok kısa", + "username-too-long": "Username too long", "user-banned": "Kullanıcı Yasaklı", "no-category": "Kategori Yok", "no-topic": "Başlık Yok", @@ -52,5 +54,9 @@ "upload-error": "Yükleme Hatası : %1", "signature-too-long": "İmza en fazla %1 karakter olabilir!", "cant-chat-with-yourself": "Kendinizle sohbet edemezsiniz!", - "not-enough-reputation-to-downvote": "Bu iletiyi aşagı oylamak için yeterince saygınlığınız yok." + "reputation-system-disabled": "Reputation system is disabled.", + "downvoting-disabled": "Downvoting is disabled", + "not-enough-reputation-to-downvote": "Bu iletiyi aşagı oylamak için yeterince saygınlığınız yok.", + "not-enough-reputation-to-flag": "Yo 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." } \ No newline at end of file diff --git a/public/language/tr/notifications.json b/public/language/tr/notifications.json index 3ff542c19a..8b5db97764 100644 --- a/public/language/tr/notifications.json +++ b/public/language/tr/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Yeni bildirim", "you_have_unread_notifications": "Okunmamış bildirimleriniz var.", "new_message_from": "%1 size bir mesaj gönderdi", - "upvoted_your_post": "%1 iletinizi beğendi.", - "favourited_your_post": "%1 iletinizi favorilerine ekledi.", - "user_flagged_post": "%1 bir iletiyi sakıncalı buldu.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 %2 başlığına bir ileti gönderdi.", "user_mentioned_you_in": "%1 %2 başlığında sizden bahsetti.", + "user_started_following_you": "%1 started following you.", "email-confirmed": "E-posta onaylandı", "email-confirmed-message": "E-postanızı onaylandığınız için teşekkürler. Hesabınız tamamen aktive edildi.", "email-confirm-error": "Bir hata oluştu...", diff --git a/public/language/tr/recent.json b/public/language/tr/recent.json index 333a85f772..088eacdff1 100644 --- a/public/language/tr/recent.json +++ b/public/language/tr/recent.json @@ -4,5 +4,6 @@ "week": "Hafta", "month": "Ay", "year": "Yıl", + "alltime": "All Time", "no_recent_topics": "Güncel konular yok." } \ No newline at end of file diff --git a/public/language/tr/search.json b/public/language/tr/search.json index b384c82c72..307b7cffb3 100644 --- a/public/language/tr/search.json +++ b/public/language/tr/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 tane “%2“ bulundu (%3 saniye)" + "results_matching": "%1 tane “%2“ bulundu (%3 saniye)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/tr/user.json b/public/language/tr/user.json index f8b6b75e3c..fb1316fd7e 100644 --- a/public/language/tr/user.json +++ b/public/language/tr/user.json @@ -4,6 +4,8 @@ "username": "Kullanıcı Adı", "email": "E-posta", "confirm_email": "E-posta onayla", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Tam Ad", "website": "Websitesi", "location": "Konum", @@ -61,5 +63,7 @@ "posts_per_page": "Sayfa başına İletiler", "notification_sounds": "Bildirim alındığında ses çal", "browsing": "Tarayıcı Ayaları", - "open_links_in_new_tab": "Dışarı giden bağlantıları yeni sekmede aç?" + "open_links_in_new_tab": "Dışarı giden bağlantıları yeni sekmede aç?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/vi/category.json b/public/language/vi/category.json index 972df0d4f3..70ab036818 100644 --- a/public/language/vi/category.json +++ b/public/language/vi/category.json @@ -3,5 +3,6 @@ "no_topics": "Không có bài viết trong danh mục.
Hãy đăng một bài viết mới?", "browsing": "đang duyệt", "no_replies": "Chưa có ai bình luận", - "share_this_category": "Chia sẻ phần mục này" + "share_this_category": "Chia sẻ phần mục này", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/vi/error.json b/public/language/vi/error.json index 6b93d3cd98..189c8de1a5 100644 --- a/public/language/vi/error.json +++ b/public/language/vi/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "Dữ liệu tài khoản không hợp lệ", "invalid-password": "Mật khẩu không hợp lệ", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "Số trang không hợp lệ", "username-taken": "Tên đăng nhập đã tồn tại", "email-taken": "Email đã tồn tại", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "Tài khoản bị ban", "no-category": "Phần mục không tồn tại", "no-topic": "Chủ đề không tồn tại", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "Chứ ký không được dài quá %1 ký tự", "cant-chat-with-yourself": "Bạn không thể chat với chính bạn!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/vi/notifications.json b/public/language/vi/notifications.json index 431305ad23..029eb60475 100644 --- a/public/language/vi/notifications.json +++ b/public/language/vi/notifications.json @@ -10,11 +10,14 @@ "new_notification": "Thông báo mới", "you_have_unread_notifications": "Bạn có thông báo chưa đọc", "new_message_from": "Tin nhắn mới từ %1", - "upvoted_your_post": "%1 đã hủy vote cho bài viết của bạn", - "favourited_your_post": "%1 thích bài viết của bạn", - "user_flagged_post": "%1 đã flag một bài viết", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 đã trả lời %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/vi/recent.json b/public/language/vi/recent.json index 907cf76923..544c3cefb2 100644 --- a/public/language/vi/recent.json +++ b/public/language/vi/recent.json @@ -4,5 +4,6 @@ "week": "Tuần", "month": "Tháng", "year": "Year", + "alltime": "All Time", "no_recent_topics": "Không có chủ đề nào gần đây" } \ No newline at end of file diff --git a/public/language/vi/search.json b/public/language/vi/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/vi/search.json +++ b/public/language/vi/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/vi/user.json b/public/language/vi/user.json index b30a8526d9..1f5cb24b9a 100644 --- a/public/language/vi/user.json +++ b/public/language/vi/user.json @@ -4,6 +4,8 @@ "username": "Tên truy cập", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "Tên đầy đủ", "website": "Website", "location": "Địa điểm", @@ -61,5 +63,7 @@ "posts_per_page": "Số bài viết trong một trang", "notification_sounds": "Xuất hiện âm thanh khi bạn nhận được một thông báo", "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?" + "open_links_in_new_tab": "Open outgoing links in new tab?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/zh_CN/category.json b/public/language/zh_CN/category.json index aafcf3e407..2f776788d1 100644 --- a/public/language/zh_CN/category.json +++ b/public/language/zh_CN/category.json @@ -3,5 +3,6 @@ "no_topics": "此版块还没有任何内容。
赶紧来发帖吧!", "browsing": "正在浏览", "no_replies": "尚无回复", - "share_this_category": "分享此版块" + "share_this_category": "分享此版块", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/zh_CN/error.json b/public/language/zh_CN/error.json index b0678b8537..561c57a0da 100644 --- a/public/language/zh_CN/error.json +++ b/public/language/zh_CN/error.json @@ -12,11 +12,13 @@ "invalid-title": "无效标题!", "invalid-user-data": "无效用户数据", "invalid-password": "无效密码", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "无效页码", "username-taken": "用户名已注册", "email-taken": "电子邮箱已注册", "email-not-confirmed": "您的电子邮箱尚未确认,请点击这里确认您的电子邮箱。", "username-too-short": "用户名太短", + "username-too-long": "Username too long", "user-banned": "用户已禁止", "no-category": "版块不存在", "no-topic": "主题不存在", @@ -52,5 +54,9 @@ "upload-error": "上传错误:%1", "signature-too-long": "签名档不能超过 %1 字!", "cant-chat-with-yourself": "您不能和自己聊天!", - "not-enough-reputation-to-downvote": "您还没有足够的威望为此帖扣分" + "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", + "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." } \ No newline at end of file diff --git a/public/language/zh_CN/notifications.json b/public/language/zh_CN/notifications.json index e2054a17f7..6e4faf216f 100644 --- a/public/language/zh_CN/notifications.json +++ b/public/language/zh_CN/notifications.json @@ -10,11 +10,14 @@ "new_notification": "新通知", "you_have_unread_notifications": "您有未读的通知。", "new_message_from": "来自 %1 的新消息", - "upvoted_your_post": "%1 赞了您的帖子。", - "favourited_your_post": "%1 收藏了您的帖子。", - "user_flagged_post": "%1 标记了一个帖子。", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 回复了:%2", "user_mentioned_you_in": "%1%2 中提到了您", + "user_started_following_you": "%1 started following you.", "email-confirmed": "电子邮箱已确认", "email-confirmed-message": "感谢您验证您的电子邮箱。您的帐户现已全面激活。", "email-confirm-error": "出错了.……", diff --git a/public/language/zh_CN/pages.json b/public/language/zh_CN/pages.json index 32c3ba5e56..28af9ea173 100644 --- a/public/language/zh_CN/pages.json +++ b/public/language/zh_CN/pages.json @@ -5,7 +5,7 @@ "recent": "最新主题", "users": "已注册用户", "notifications": "提醒", - "tags": "Topics tagged under \"%1\"", + "tags": "话题为 \"%1\" 的主题", "user.edit": "正在编辑 \"%1\"", "user.following": "%1 关注", "user.followers": "关注 %1 的人", diff --git a/public/language/zh_CN/recent.json b/public/language/zh_CN/recent.json index 6d9a34e12d..c363d4921c 100644 --- a/public/language/zh_CN/recent.json +++ b/public/language/zh_CN/recent.json @@ -4,5 +4,6 @@ "week": "本周", "month": "本月", "year": "本年", + "alltime": "All Time", "no_recent_topics": "无最新主题。" } \ No newline at end of file diff --git a/public/language/zh_CN/search.json b/public/language/zh_CN/search.json index acbed61943..484acb3626 100644 --- a/public/language/zh_CN/search.json +++ b/public/language/zh_CN/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 条结果,匹配 \"%2\",(耗时 %3 秒)" + "results_matching": "共 %1 条结果匹配 \"%2\",(耗时 %3 秒)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/zh_CN/topic.json b/public/language/zh_CN/topic.json index 84275cb148..183cbfcc23 100644 --- a/public/language/zh_CN/topic.json +++ b/public/language/zh_CN/topic.json @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 名会员和 %2 名游客", "more_users": "%1 名会员", "more_guests": "%1 名游客", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 和 %2 其他人", "sort_by": "排序", "oldest_to_newest": "从旧到新", "newest_to_oldest": "从新到旧", diff --git a/public/language/zh_CN/user.json b/public/language/zh_CN/user.json index 173234796e..51d0b25817 100644 --- a/public/language/zh_CN/user.json +++ b/public/language/zh_CN/user.json @@ -4,6 +4,8 @@ "username": "用户名", "email": "电子邮件", "confirm_email": "确认电子邮箱", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "姓名", "website": "网站", "location": "位置", @@ -61,5 +63,7 @@ "posts_per_page": "每页帖子数", "notification_sounds": "收到通知时播放提示音。", "browsing": "浏览设置", - "open_links_in_new_tab": "在新标签中打开外部链接?" + "open_links_in_new_tab": "在新标签中打开外部链接?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file diff --git a/public/language/zh_TW/category.json b/public/language/zh_TW/category.json index f1e867bb47..3fb8b883ee 100644 --- a/public/language/zh_TW/category.json +++ b/public/language/zh_TW/category.json @@ -3,5 +3,6 @@ "no_topics": "這個版面還沒有任何內容。
趕緊來發文章吧!", "browsing": "正在瀏覽", "no_replies": "還沒有回覆", - "share_this_category": "分享這類別" + "share_this_category": "分享這類別", + "ignore": "Ignore" } \ No newline at end of file diff --git a/public/language/zh_TW/error.json b/public/language/zh_TW/error.json index a843fee3b9..d965ca117e 100644 --- a/public/language/zh_TW/error.json +++ b/public/language/zh_TW/error.json @@ -12,11 +12,13 @@ "invalid-title": "Invalid title!", "invalid-user-data": "無效的使用者資料", "invalid-password": "無效的密碼", + "invalid-username-or-password": "Please specify both a username and password", "invalid-pagination-value": "無效的分頁數值", "username-taken": "該使用者名稱已被使用", "email-taken": "該信箱已被使用", "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", "username-too-short": "Username too short", + "username-too-long": "Username too long", "user-banned": "該使用者已被停用", "no-category": "類別並不存在", "no-topic": "主題並不存在", @@ -52,5 +54,9 @@ "upload-error": "Upload Error : %1", "signature-too-long": "簽名檔長度不能超過 %1 字元!", "cant-chat-with-yourself": "你不能與自己聊天!", - "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post" + "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", + "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." } \ No newline at end of file diff --git a/public/language/zh_TW/notifications.json b/public/language/zh_TW/notifications.json index 56c9534641..e9132a07df 100644 --- a/public/language/zh_TW/notifications.json +++ b/public/language/zh_TW/notifications.json @@ -10,11 +10,14 @@ "new_notification": "新訊息通知", "you_have_unread_notifications": "您有未讀的訊息!", "new_message_from": "來自 %1 的新訊息", - "upvoted_your_post": "%1 has upvoted your post.", - "favourited_your_post": "%1 has favourited your post.", - "user_flagged_post": "%1 flagged a post.", + "upvoted_your_post_in": "%1 has upvoted your post in %2.", + "moved_your_post": "%1 has moved your post.", + "moved_your_topic": "%1 has moved your topic.", + "favourited_your_post_in": "%1 has favourited your post in %2.", + "user_flagged_post_in": "%1 flagged a post in %2", "user_posted_to": "%1 has posted a reply to: %2", "user_mentioned_you_in": "%1 mentioned you in %2", + "user_started_following_you": "%1 started following you.", "email-confirmed": "Email Confirmed", "email-confirmed-message": "Thank you for validating your email. Your account is now fully activated.", "email-confirm-error": "An error occurred...", diff --git a/public/language/zh_TW/recent.json b/public/language/zh_TW/recent.json index f264357969..1b53b1220c 100644 --- a/public/language/zh_TW/recent.json +++ b/public/language/zh_TW/recent.json @@ -4,5 +4,6 @@ "week": "本周", "month": "本月", "year": "Year", + "alltime": "All Time", "no_recent_topics": "最近沒新主題." } \ No newline at end of file diff --git a/public/language/zh_TW/search.json b/public/language/zh_TW/search.json index d0ffc64f36..e9eef4632a 100644 --- a/public/language/zh_TW/search.json +++ b/public/language/zh_TW/search.json @@ -1,3 +1,4 @@ { - "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)" + "results_matching": "%1 result(s) matching \"%2\", (%3 seconds)", + "no-matches": "No posts found" } \ No newline at end of file diff --git a/public/language/zh_TW/user.json b/public/language/zh_TW/user.json index b516f98795..f73d573c02 100644 --- a/public/language/zh_TW/user.json +++ b/public/language/zh_TW/user.json @@ -4,6 +4,8 @@ "username": "使用者名稱", "email": "Email", "confirm_email": "Confirm Email", + "delete_account": "Delete Account", + "delete_account_confirm": "Are you sure you want to delete your account?", "fullname": "姓名", "website": "網站", "location": "地址", @@ -61,5 +63,7 @@ "posts_per_page": "每頁的文章數", "notification_sounds": "當收到新消息時播放提示音", "browsing": "瀏覽設定", - "open_links_in_new_tab": "在新的分頁開啟外部連結?" + "open_links_in_new_tab": "在新的分頁開啟外部連結?", + "follow_topics_you_reply_to": "Follow topics that you reply to.", + "follow_topics_you_create": "Follow topics you create." } \ No newline at end of file From 6e21b7a8306a1021638c031ebe04c982ef3267ed Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 15 Sep 2014 10:47:25 -0400 Subject: [PATCH 11/16] disabled parents no longer show up as parents of a category, re: #2080 --- src/categories.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/categories.js b/src/categories.js index e33d8a7aa3..473bf50c8a 100644 --- a/src/categories.js +++ b/src/categories.js @@ -366,7 +366,7 @@ var db = require('./database'), if (categories[i]) { categories[i]['unread-class'] = (parseInt(categories[i].topic_count, 10) === 0 || (hasRead[i] && uid !== 0)) ? '' : 'unread'; categories[i].children = results.children[i]; - categories[i].parent = results.parents[i]; + categories[i].parent = results.parents[i] && !results.parents[i].disabled ? results.parents[i] : null; } } From 84d4035597e09d1d5da3ec589eb119661105c742 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 15 Sep 2014 10:50:58 -0400 Subject: [PATCH 12/16] Child categories no longer show up on homepage, re: #2080 --- src/controllers/index.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/controllers/index.js b/src/controllers/index.js index 7d7ea579ac..97afb0d4e4 100644 --- a/src/controllers/index.js +++ b/src/controllers/index.js @@ -69,6 +69,11 @@ Controllers.home = function(req, res, next) { return next(err); } + // Remove child categories, as they don't belong on the home page + categoryData = categoryData.filter(function(categoryObj) { + return !categoryObj.parent; + }); + categories.getRecentTopicReplies(categoryData, uid, function(err) { next(err, categoryData); }); From 6ade1e858da43b4acc4d2eebc4999abd74973584 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 15 Sep 2014 22:09:41 -0400 Subject: [PATCH 13/16] updating default config so the site title is shown --- install/data/defaults.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/install/data/defaults.json b/install/data/defaults.json index fc5369de82..32175b1312 100644 --- a/install/data/defaults.json +++ b/install/data/defaults.json @@ -3,6 +3,10 @@ "field": "title", "value": "NodeBB" }, + { + "field": "showSiteTitle", + "value": "1" + }, { "field": "postDelay", "value": 10 From 52bb7ebe52cd299efdc1c76ac28fc6eb8c1b19e9 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 15 Sep 2014 22:10:09 -0400 Subject: [PATCH 14/16] 0.5.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e97f1d1660..d3a32f0d00 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "nodebb", "license": "GPLv3 or later", "description": "NodeBB Forum", - "version": "0.5.0-4", + "version": "0.5.0", "homepage": "http://www.nodebb.org", "repository": { "type": "git", From 963428174b7c641b431195cb9a50a9e35961ede0 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Tue, 16 Sep 2014 09:18:21 -0400 Subject: [PATCH 15/16] fixed #2091 --- public/src/forum/admin/index.js | 9 +- public/vendor/semver/semver.browser.js | 1046 ++++++++++++++++++++++++ 2 files changed, 1054 insertions(+), 1 deletion(-) create mode 100644 public/vendor/semver/semver.browser.js diff --git a/public/src/forum/admin/index.js b/public/src/forum/admin/index.js index c10706e257..29335ae7a8 100644 --- a/public/src/forum/admin/index.js +++ b/public/src/forum/admin/index.js @@ -1,7 +1,7 @@ "use strict"; /*global define, ajaxify, app, socket, RELATIVE_PATH*/ -define('forum/admin/index', function() { +define('forum/admin/index', ['semver'], function(semver) { var Admin = {}; Admin.init = function() { @@ -21,6 +21,13 @@ define('forum/admin/index', function() { }); $.get('https://api.github.com/repos/NodeBB/NodeBB/tags', function(releases) { + // Re-sort the releases, as they do not follow Semver (wrt pre-releases) + releases = releases.sort(function(a, b) { + a = a.name.replace(/^v/, ''); + b = b.name.replace(/^v/, ''); + return semver.lt(a, b) ? 1 : -1; + }); + var version = $('#version').html(), latestVersion = releases[0].name.slice(1), checkEl = $('.version-check'); diff --git a/public/vendor/semver/semver.browser.js b/public/vendor/semver/semver.browser.js new file mode 100644 index 0000000000..345d2b54c8 --- /dev/null +++ b/public/vendor/semver/semver.browser.js @@ -0,0 +1,1046 @@ +;(function(exports) { + +// export the class if we are in a Node-like system. +if (typeof module === 'object' && module.exports === exports) + exports = module.exports = SemVer; + +// The debug function is excluded entirely from the minified version. + +// Note: this is the semver.org version of the spec that it implements +// Not necessarily the package version of this code. +exports.SEMVER_SPEC_VERSION = '2.0.0'; + +// The actual regexps go on exports.re +var re = exports.re = []; +var src = exports.src = []; +var R = 0; + +// The following Regular Expressions can be used for tokenizing, +// validating, and parsing SemVer version strings. + +// ## Numeric Identifier +// A single `0`, or a non-zero digit followed by zero or more digits. + +var NUMERICIDENTIFIER = R++; +src[NUMERICIDENTIFIER] = '0|[1-9]\\d*'; +var NUMERICIDENTIFIERLOOSE = R++; +src[NUMERICIDENTIFIERLOOSE] = '[0-9]+'; + + +// ## Non-numeric Identifier +// Zero or more digits, followed by a letter or hyphen, and then zero or +// more letters, digits, or hyphens. + +var NONNUMERICIDENTIFIER = R++; +src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'; + + +// ## Main Version +// Three dot-separated numeric identifiers. + +var MAINVERSION = R++; +src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' + + '(' + src[NUMERICIDENTIFIER] + ')\\.' + + '(' + src[NUMERICIDENTIFIER] + ')'; + +var MAINVERSIONLOOSE = R++; +src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + + '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + + '(' + src[NUMERICIDENTIFIERLOOSE] + ')'; + +// ## Pre-release Version Identifier +// A numeric identifier, or a non-numeric identifier. + +var PRERELEASEIDENTIFIER = R++; +src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] + + '|' + src[NONNUMERICIDENTIFIER] + ')'; + +var PRERELEASEIDENTIFIERLOOSE = R++; +src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] + + '|' + src[NONNUMERICIDENTIFIER] + ')'; + + +// ## Pre-release Version +// Hyphen, followed by one or more dot-separated pre-release version +// identifiers. + +var PRERELEASE = R++; +src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] + + '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))'; + +var PRERELEASELOOSE = R++; +src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] + + '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))'; + +// ## Build Metadata Identifier +// Any combination of digits, letters, or hyphens. + +var BUILDIDENTIFIER = R++; +src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+'; + +// ## Build Metadata +// Plus sign, followed by one or more period-separated build metadata +// identifiers. + +var BUILD = R++; +src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] + + '(?:\\.' + src[BUILDIDENTIFIER] + ')*))'; + + +// ## Full Version String +// A main version, followed optionally by a pre-release version and +// build metadata. + +// Note that the only major, minor, patch, and pre-release sections of +// the version string are capturing groups. The build metadata is not a +// capturing group, because it should not ever be used in version +// comparison. + +var FULL = R++; +var FULLPLAIN = 'v?' + src[MAINVERSION] + + src[PRERELEASE] + '?' + + src[BUILD] + '?'; + +src[FULL] = '^' + FULLPLAIN + '$'; + +// like full, but allows v1.2.3 and =1.2.3, which people do sometimes. +// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty +// common in the npm registry. +var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] + + src[PRERELEASELOOSE] + '?' + + src[BUILD] + '?'; + +var LOOSE = R++; +src[LOOSE] = '^' + LOOSEPLAIN + '$'; + +var GTLT = R++; +src[GTLT] = '((?:<|>)?=?)'; + +// Something like "2.*" or "1.2.x". +// Note that "x.x" is a valid xRange identifer, meaning "any version" +// Only the first item is strictly required. +var XRANGEIDENTIFIERLOOSE = R++; +src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'; +var XRANGEIDENTIFIER = R++; +src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*'; + +var XRANGEPLAIN = R++; +src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + + '(?:(' + src[PRERELEASE] + ')' + + ')?)?)?'; + +var XRANGEPLAINLOOSE = R++; +src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:(' + src[PRERELEASELOOSE] + ')' + + ')?)?)?'; + +// >=2.x, for example, means >=2.0.0-0 +// <1.x would be the same as "<1.0.0-0", though. +var XRANGE = R++; +src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$'; +var XRANGELOOSE = R++; +src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$'; + +// Tilde ranges. +// Meaning is "reasonably at or greater than" +var LONETILDE = R++; +src[LONETILDE] = '(?:~>?)'; + +var TILDETRIM = R++; +src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+'; +re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g'); +var tildeTrimReplace = '$1~'; + +var TILDE = R++; +src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$'; +var TILDELOOSE = R++; +src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$'; + +// Caret ranges. +// Meaning is "at least and backwards compatible with" +var LONECARET = R++; +src[LONECARET] = '(?:\\^)'; + +var CARETTRIM = R++; +src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+'; +re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g'); +var caretTrimReplace = '$1^'; + +var CARET = R++; +src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$'; +var CARETLOOSE = R++; +src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$'; + +// A simple gt/lt/eq thing, or just "" to indicate "any version" +var COMPARATORLOOSE = R++; +src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$'; +var COMPARATOR = R++; +src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$'; + + +// An expression to strip any whitespace between the gtlt and the thing +// it modifies, so that `> 1.2.3` ==> `>1.2.3` +var COMPARATORTRIM = R++; +src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] + + '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')'; + +// this one has to use the /g flag +re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g'); +var comparatorTrimReplace = '$1$2$3'; + + +// Something like `1.2.3 - 1.2.4` +// Note that these all use the loose form, because they'll be +// checked against either the strict or loose comparator form +// later. +var HYPHENRANGE = R++; +src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' + + '\\s+-\\s+' + + '(' + src[XRANGEPLAIN] + ')' + + '\\s*$'; + +var HYPHENRANGELOOSE = R++; +src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' + + '\\s+-\\s+' + + '(' + src[XRANGEPLAINLOOSE] + ')' + + '\\s*$'; + +// Star ranges basically just allow anything at all. +var STAR = R++; +src[STAR] = '(<|>)?=?\\s*\\*'; + +// Compile to actual regexp objects. +// All are flag-free, unless they were created above with a flag. +for (var i = 0; i < R; i++) { + ; + if (!re[i]) + re[i] = new RegExp(src[i]); +} + +exports.parse = parse; +function parse(version, loose) { + var r = loose ? re[LOOSE] : re[FULL]; + return (r.test(version)) ? new SemVer(version, loose) : null; +} + +exports.valid = valid; +function valid(version, loose) { + var v = parse(version, loose); + return v ? v.version : null; +} + + +exports.clean = clean; +function clean(version, loose) { + var s = parse(version, loose); + return s ? s.version : null; +} + +exports.SemVer = SemVer; + +function SemVer(version, loose) { + if (version instanceof SemVer) { + if (version.loose === loose) + return version; + else + version = version.version; + } else if (typeof version !== 'string') { + throw new TypeError('Invalid Version: ' + version); + } + + if (!(this instanceof SemVer)) + return new SemVer(version, loose); + + ; + this.loose = loose; + var m = version.trim().match(loose ? re[LOOSE] : re[FULL]); + + if (!m) + throw new TypeError('Invalid Version: ' + version); + + this.raw = version; + + // these are actually numbers + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + + // numberify any prerelease numeric ids + if (!m[4]) + this.prerelease = []; + else + this.prerelease = m[4].split('.').map(function(id) { + return (/^[0-9]+$/.test(id)) ? +id : id; + }); + + this.build = m[5] ? m[5].split('.') : []; + this.format(); +} + +SemVer.prototype.format = function() { + this.version = this.major + '.' + this.minor + '.' + this.patch; + if (this.prerelease.length) + this.version += '-' + this.prerelease.join('.'); + return this.version; +}; + +SemVer.prototype.inspect = function() { + return ''; +}; + +SemVer.prototype.toString = function() { + return this.version; +}; + +SemVer.prototype.compare = function(other) { + ; + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + return this.compareMain(other) || this.comparePre(other); +}; + +SemVer.prototype.compareMain = function(other) { + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + return compareIdentifiers(this.major, other.major) || + compareIdentifiers(this.minor, other.minor) || + compareIdentifiers(this.patch, other.patch); +}; + +SemVer.prototype.comparePre = function(other) { + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + // NOT having a prerelease is > having one + if (this.prerelease.length && !other.prerelease.length) + return -1; + else if (!this.prerelease.length && other.prerelease.length) + return 1; + else if (!this.prerelease.length && !other.prerelease.length) + return 0; + + var i = 0; + do { + var a = this.prerelease[i]; + var b = other.prerelease[i]; + ; + if (a === undefined && b === undefined) + return 0; + else if (b === undefined) + return 1; + else if (a === undefined) + return -1; + else if (a === b) + continue; + else + return compareIdentifiers(a, b); + } while (++i); +}; + +// preminor will bump the version up to the next minor release, and immediately +// down to pre-release. premajor and prepatch work the same way. +SemVer.prototype.inc = function(release) { + switch (release) { + case 'premajor': + this.inc('major'); + this.inc('pre'); + break; + case 'preminor': + this.inc('minor'); + this.inc('pre'); + break; + case 'prepatch': + // If this is already a prerelease, it will bump to the next version + // drop any prereleases that might already exist, since they are not + // relevant at this point. + this.prerelease.length = 0 + this.inc('patch'); + this.inc('pre'); + break; + // If the input is a non-prerelease version, this acts the same as + // prepatch. + case 'prerelease': + if (this.prerelease.length === 0) + this.inc('patch'); + this.inc('pre'); + break; + case 'major': + this.major++; + this.minor = -1; + case 'minor': + this.minor++; + this.patch = 0; + this.prerelease = []; + break; + case 'patch': + // If this is not a pre-release version, it will increment the patch. + // If it is a pre-release it will bump up to the same patch version. + // 1.2.0-5 patches to 1.2.0 + // 1.2.0 patches to 1.2.1 + if (this.prerelease.length === 0) + this.patch++; + this.prerelease = []; + break; + // This probably shouldn't be used publically. + // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction. + case 'pre': + if (this.prerelease.length === 0) + this.prerelease = [0]; + else { + var i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === 'number') { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) // didn't increment anything + this.prerelease.push(0); + } + break; + + default: + throw new Error('invalid increment argument: ' + release); + } + this.format(); + return this; +}; + +exports.inc = inc; +function inc(version, release, loose) { + try { + return new SemVer(version, loose).inc(release).version; + } catch (er) { + return null; + } +} + +exports.compareIdentifiers = compareIdentifiers; + +var numeric = /^[0-9]+$/; +function compareIdentifiers(a, b) { + var anum = numeric.test(a); + var bnum = numeric.test(b); + + if (anum && bnum) { + a = +a; + b = +b; + } + + return (anum && !bnum) ? -1 : + (bnum && !anum) ? 1 : + a < b ? -1 : + a > b ? 1 : + 0; +} + +exports.rcompareIdentifiers = rcompareIdentifiers; +function rcompareIdentifiers(a, b) { + return compareIdentifiers(b, a); +} + +exports.compare = compare; +function compare(a, b, loose) { + return new SemVer(a, loose).compare(b); +} + +exports.compareLoose = compareLoose; +function compareLoose(a, b) { + return compare(a, b, true); +} + +exports.rcompare = rcompare; +function rcompare(a, b, loose) { + return compare(b, a, loose); +} + +exports.sort = sort; +function sort(list, loose) { + return list.sort(function(a, b) { + return exports.compare(a, b, loose); + }); +} + +exports.rsort = rsort; +function rsort(list, loose) { + return list.sort(function(a, b) { + return exports.rcompare(a, b, loose); + }); +} + +exports.gt = gt; +function gt(a, b, loose) { + return compare(a, b, loose) > 0; +} + +exports.lt = lt; +function lt(a, b, loose) { + return compare(a, b, loose) < 0; +} + +exports.eq = eq; +function eq(a, b, loose) { + return compare(a, b, loose) === 0; +} + +exports.neq = neq; +function neq(a, b, loose) { + return compare(a, b, loose) !== 0; +} + +exports.gte = gte; +function gte(a, b, loose) { + return compare(a, b, loose) >= 0; +} + +exports.lte = lte; +function lte(a, b, loose) { + return compare(a, b, loose) <= 0; +} + +exports.cmp = cmp; +function cmp(a, op, b, loose) { + var ret; + switch (op) { + case '===': ret = a === b; break; + case '!==': ret = a !== b; break; + case '': case '=': case '==': ret = eq(a, b, loose); break; + case '!=': ret = neq(a, b, loose); break; + case '>': ret = gt(a, b, loose); break; + case '>=': ret = gte(a, b, loose); break; + case '<': ret = lt(a, b, loose); break; + case '<=': ret = lte(a, b, loose); break; + default: throw new TypeError('Invalid operator: ' + op); + } + return ret; +} + +exports.Comparator = Comparator; +function Comparator(comp, loose) { + if (comp instanceof Comparator) { + if (comp.loose === loose) + return comp; + else + comp = comp.value; + } + + if (!(this instanceof Comparator)) + return new Comparator(comp, loose); + + ; + this.loose = loose; + this.parse(comp); + + if (this.semver === ANY) + this.value = ''; + else + this.value = this.operator + this.semver.version; +} + +var ANY = {}; +Comparator.prototype.parse = function(comp) { + var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; + var m = comp.match(r); + + if (!m) + throw new TypeError('Invalid comparator: ' + comp); + + this.operator = m[1]; + if (this.operator === '=') + this.operator = ''; + + // if it literally is just '>' or '' then allow anything. + if (!m[2]) + this.semver = ANY; + else { + this.semver = new SemVer(m[2], this.loose); + + // <1.2.3-rc DOES allow 1.2.3-beta (has prerelease) + // >=1.2.3 DOES NOT allow 1.2.3-beta + // <=1.2.3 DOES allow 1.2.3-beta + // However, <1.2.3 does NOT allow 1.2.3-beta, + // even though `1.2.3-beta < 1.2.3` + // The assumption is that the 1.2.3 version has something you + // *don't* want, so we push the prerelease down to the minimum. + if (this.operator === '<' && !this.semver.prerelease.length) { + this.semver.prerelease = ['0']; + this.semver.format(); + } + } +}; + +Comparator.prototype.inspect = function() { + return ''; +}; + +Comparator.prototype.toString = function() { + return this.value; +}; + +Comparator.prototype.test = function(version) { + ; + return (this.semver === ANY) ? true : + cmp(version, this.operator, this.semver, this.loose); +}; + + +exports.Range = Range; +function Range(range, loose) { + if ((range instanceof Range) && range.loose === loose) + return range; + + if (!(this instanceof Range)) + return new Range(range, loose); + + this.loose = loose; + + // First, split based on boolean or || + this.raw = range; + this.set = range.split(/\s*\|\|\s*/).map(function(range) { + return this.parseRange(range.trim()); + }, this).filter(function(c) { + // throw out any that are not relevant for whatever reason + return c.length; + }); + + if (!this.set.length) { + throw new TypeError('Invalid SemVer Range: ' + range); + } + + this.format(); +} + +Range.prototype.inspect = function() { + return ''; +}; + +Range.prototype.format = function() { + this.range = this.set.map(function(comps) { + return comps.join(' ').trim(); + }).join('||').trim(); + return this.range; +}; + +Range.prototype.toString = function() { + return this.range; +}; + +Range.prototype.parseRange = function(range) { + var loose = this.loose; + range = range.trim(); + ; + // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` + var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE]; + range = range.replace(hr, hyphenReplace); + ; + // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5` + range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace); + ; + + // `~ 1.2.3` => `~1.2.3` + range = range.replace(re[TILDETRIM], tildeTrimReplace); + + // `^ 1.2.3` => `^1.2.3` + range = range.replace(re[CARETTRIM], caretTrimReplace); + + // normalize spaces + range = range.split(/\s+/).join(' '); + + // At this point, the range is completely trimmed and + // ready to be split into comparators. + + var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; + var set = range.split(' ').map(function(comp) { + return parseComparator(comp, loose); + }).join(' ').split(/\s+/); + if (this.loose) { + // in loose mode, throw out any that are not valid comparators + set = set.filter(function(comp) { + return !!comp.match(compRe); + }); + } + set = set.map(function(comp) { + return new Comparator(comp, loose); + }); + + return set; +}; + +// Mostly just for testing and legacy API reasons +exports.toComparators = toComparators; +function toComparators(range, loose) { + return new Range(range, loose).set.map(function(comp) { + return comp.map(function(c) { + return c.value; + }).join(' ').trim().split(' '); + }); +} + +// comprised of xranges, tildes, stars, and gtlt's at this point. +// already replaced the hyphen ranges +// turn into a set of JUST comparators. +function parseComparator(comp, loose) { + ; + comp = replaceCarets(comp, loose); + ; + comp = replaceTildes(comp, loose); + ; + comp = replaceXRanges(comp, loose); + ; + comp = replaceStars(comp, loose); + ; + return comp; +} + +function isX(id) { + return !id || id.toLowerCase() === 'x' || id === '*'; +} + +// ~, ~> --> * (any, kinda silly) +// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0 +// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0 +// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0 +// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0 +// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0 +function replaceTildes(comp, loose) { + return comp.trim().split(/\s+/).map(function(comp) { + return replaceTilde(comp, loose); + }).join(' '); +} + +function replaceTilde(comp, loose) { + var r = loose ? re[TILDELOOSE] : re[TILDE]; + return comp.replace(r, function(_, M, m, p, pr) { + ; + var ret; + + if (isX(M)) + ret = ''; + else if (isX(m)) + ret = '>=' + M + '.0.0-0 <' + (+M + 1) + '.0.0-0'; + else if (isX(p)) + // ~1.2 == >=1.2.0- <1.3.0- + ret = '>=' + M + '.' + m + '.0-0 <' + M + '.' + (+m + 1) + '.0-0'; + else if (pr) { + ; + if (pr.charAt(0) !== '-') + pr = '-' + pr; + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + M + '.' + (+m + 1) + '.0-0'; + } else + // ~1.2.3 == >=1.2.3-0 <1.3.0-0 + ret = '>=' + M + '.' + m + '.' + p + '-0' + + ' <' + M + '.' + (+m + 1) + '.0-0'; + + ; + return ret; + }); +} + +// ^ --> * (any, kinda silly) +// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0 +// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0 +// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0 +// ^1.2.3 --> >=1.2.3 <2.0.0 +// ^1.2.0 --> >=1.2.0 <2.0.0 +function replaceCarets(comp, loose) { + return comp.trim().split(/\s+/).map(function(comp) { + return replaceCaret(comp, loose); + }).join(' '); +} + +function replaceCaret(comp, loose) { + var r = loose ? re[CARETLOOSE] : re[CARET]; + return comp.replace(r, function(_, M, m, p, pr) { + ; + var ret; + + if (isX(M)) + ret = ''; + else if (isX(m)) + ret = '>=' + M + '.0.0-0 <' + (+M + 1) + '.0.0-0'; + else if (isX(p)) { + if (M === '0') + ret = '>=' + M + '.' + m + '.0-0 <' + M + '.' + (+m + 1) + '.0-0'; + else + ret = '>=' + M + '.' + m + '.0-0 <' + (+M + 1) + '.0.0-0'; + } else if (pr) { + ; + if (pr.charAt(0) !== '-') + pr = '-' + pr; + if (M === '0') { + if (m === '0') + ret = '=' + M + '.' + m + '.' + p + pr; + else + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + M + '.' + (+m + 1) + '.0-0'; + } else + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + (+M + 1) + '.0.0-0'; + } else { + if (M === '0') { + if (m === '0') + ret = '=' + M + '.' + m + '.' + p; + else + ret = '>=' + M + '.' + m + '.' + p + '-0' + + ' <' + M + '.' + (+m + 1) + '.0-0'; + } else + ret = '>=' + M + '.' + m + '.' + p + '-0' + + ' <' + (+M + 1) + '.0.0-0'; + } + + ; + return ret; + }); +} + +function replaceXRanges(comp, loose) { + ; + return comp.split(/\s+/).map(function(comp) { + return replaceXRange(comp, loose); + }).join(' '); +} + +function replaceXRange(comp, loose) { + comp = comp.trim(); + var r = loose ? re[XRANGELOOSE] : re[XRANGE]; + return comp.replace(r, function(ret, gtlt, M, m, p, pr) { + ; + var xM = isX(M); + var xm = xM || isX(m); + var xp = xm || isX(p); + var anyX = xp; + + if (gtlt === '=' && anyX) + gtlt = ''; + + if (gtlt && anyX) { + // replace X with 0, and then append the -0 min-prerelease + if (xM) + M = 0; + if (xm) + m = 0; + if (xp) + p = 0; + + if (gtlt === '>') { + // >1 => >=2.0.0-0 + // >1.2 => >=1.3.0-0 + // >1.2.3 => >= 1.2.4-0 + gtlt = '>='; + if (xM) { + // no change + } else if (xm) { + M = +M + 1; + m = 0; + p = 0; + } else if (xp) { + m = +m + 1; + p = 0; + } + } + + + ret = gtlt + M + '.' + m + '.' + p + '-0'; + } else if (xM) { + // allow any + ret = '*'; + } else if (xm) { + // append '-0' onto the version, otherwise + // '1.x.x' matches '2.0.0-beta', since the tag + // *lowers* the version value + ret = '>=' + M + '.0.0-0 <' + (+M + 1) + '.0.0-0'; + } else if (xp) { + ret = '>=' + M + '.' + m + '.0-0 <' + M + '.' + (+m + 1) + '.0-0'; + } + + ; + + return ret; + }); +} + +// Because * is AND-ed with everything else in the comparator, +// and '' means "any version", just remove the *s entirely. +function replaceStars(comp, loose) { + ; + // Looseness is ignored here. star is always as loose as it gets! + return comp.trim().replace(re[STAR], ''); +} + +// This function is passed to string.replace(re[HYPHENRANGE]) +// M, m, patch, prerelease, build +// 1.2 - 3.4.5 => >=1.2.0-0 <=3.4.5 +// 1.2.3 - 3.4 => >=1.2.0-0 <3.5.0-0 Any 3.4.x will do +// 1.2 - 3.4 => >=1.2.0-0 <3.5.0-0 +function hyphenReplace($0, + from, fM, fm, fp, fpr, fb, + to, tM, tm, tp, tpr, tb) { + + if (isX(fM)) + from = ''; + else if (isX(fm)) + from = '>=' + fM + '.0.0-0'; + else if (isX(fp)) + from = '>=' + fM + '.' + fm + '.0-0'; + else + from = '>=' + from; + + if (isX(tM)) + to = ''; + else if (isX(tm)) + to = '<' + (+tM + 1) + '.0.0-0'; + else if (isX(tp)) + to = '<' + tM + '.' + (+tm + 1) + '.0-0'; + else if (tpr) + to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr; + else + to = '<=' + to; + + return (from + ' ' + to).trim(); +} + + +// if ANY of the sets match ALL of its comparators, then pass +Range.prototype.test = function(version) { + if (!version) + return false; + for (var i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version)) + return true; + } + return false; +}; + +function testSet(set, version) { + for (var i = 0; i < set.length; i++) { + if (!set[i].test(version)) + return false; + } + return true; +} + +exports.satisfies = satisfies; +function satisfies(version, range, loose) { + try { + range = new Range(range, loose); + } catch (er) { + return false; + } + return range.test(version); +} + +exports.maxSatisfying = maxSatisfying; +function maxSatisfying(versions, range, loose) { + return versions.filter(function(version) { + return satisfies(version, range, loose); + }).sort(function(a, b) { + return rcompare(a, b, loose); + })[0] || null; +} + +exports.validRange = validRange; +function validRange(range, loose) { + try { + // Return '*' instead of '' so that truthiness works. + // This will throw if it's invalid anyway + return new Range(range, loose).range || '*'; + } catch (er) { + return null; + } +} + +// Determine if version is less than all the versions possible in the range +exports.ltr = ltr; +function ltr(version, range, loose) { + return outside(version, range, '<', loose); +} + +// Determine if version is greater than all the versions possible in the range. +exports.gtr = gtr; +function gtr(version, range, loose) { + return outside(version, range, '>', loose); +} + +exports.outside = outside; +function outside(version, range, hilo, loose) { + version = new SemVer(version, loose); + range = new Range(range, loose); + + var gtfn, ltefn, ltfn, comp, ecomp; + switch (hilo) { + case '>': + gtfn = gt; + ltefn = lte; + ltfn = lt; + comp = '>'; + ecomp = '>='; + break; + case '<': + gtfn = lt; + ltefn = gte; + ltfn = gt; + comp = '<'; + ecomp = '<='; + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + + // If it satisifes the range it is not outside + if (satisfies(version, range, loose)) { + return false; + } + + // From now on, variable terms are as if we're in "gtr" mode. + // but note that everything is flipped for the "ltr" function. + + for (var i = 0; i < range.set.length; ++i) { + var comparators = range.set[i]; + + var high = null; + var low = null; + + comparators.forEach(function(comparator) { + high = high || comparator; + low = low || comparator; + if (gtfn(comparator.semver, high.semver, loose)) { + high = comparator; + } else if (ltfn(comparator.semver, low.semver, loose)) { + low = comparator; + } + }); + + // If the edge version comparator has a operator then our version + // isn't outside it + if (high.operator === comp || high.operator === ecomp) { + return false; + } + + // If the lowest version comparator has an operator and our version + // is less than it then it isn't higher than the range + if ((!low.operator || low.operator === comp) && + ltefn(version, low.semver)) { + return false; + } else if (low.operator === ecomp && ltfn(version, low.semver)) { + return false; + } + } + return true; +} + +// Use the define() function if we're in AMD land +if (typeof define === 'function' && define.amd) + define('semver', exports); + +})( + typeof exports === 'object' ? exports : + typeof define === 'function' && define.amd ? {} : + semver = {} +); From e9b373438d216913cf742b547c1fa2f0f0dbd1e1 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 17 Sep 2014 09:21:22 -0400 Subject: [PATCH 16/16] latest translations and fallbacks Conflicts: public/language/de/user.json public/language/nl/user.json public/language/pl/user.json public/language/sv/user.json public/language/vi/user.json public/language/zh_CN/user.json --- public/language/ar/email.json | 5 ++- public/language/ar/error.json | 1 + public/language/ar/topic.json | 2 +- public/language/ar/user.json | 1 + public/language/cs/email.json | 5 ++- public/language/cs/error.json | 1 + public/language/cs/topic.json | 2 +- public/language/cs/user.json | 1 + public/language/de/email.json | 5 ++- public/language/de/error.json | 13 ++++---- public/language/de/topic.json | 2 +- public/language/de/user.json | 9 +++--- public/language/en@pirate/email.json | 5 ++- public/language/en@pirate/error.json | 1 + public/language/en@pirate/topic.json | 2 +- public/language/en@pirate/user.json | 1 + public/language/en_US/email.json | 5 ++- public/language/en_US/error.json | 1 + public/language/en_US/topic.json | 2 +- public/language/en_US/user.json | 1 + public/language/es/email.json | 5 ++- public/language/es/error.json | 1 + public/language/es/topic.json | 2 +- public/language/es/user.json | 1 + public/language/et/email.json | 5 ++- public/language/et/error.json | 1 + public/language/et/topic.json | 2 +- public/language/et/user.json | 1 + public/language/fa_IR/email.json | 5 ++- public/language/fa_IR/error.json | 1 + public/language/fa_IR/topic.json | 2 +- public/language/fa_IR/user.json | 1 + public/language/fi/email.json | 5 ++- public/language/fi/error.json | 1 + public/language/fi/topic.json | 2 +- public/language/fi/user.json | 1 + public/language/fr/category.json | 2 +- public/language/fr/email.json | 5 ++- public/language/fr/error.json | 1 + public/language/fr/topic.json | 2 +- public/language/fr/user.json | 1 + public/language/he/email.json | 5 ++- public/language/he/error.json | 1 + public/language/he/topic.json | 2 +- public/language/he/user.json | 1 + public/language/hu/email.json | 5 ++- public/language/hu/error.json | 1 + public/language/hu/topic.json | 2 +- public/language/hu/user.json | 1 + public/language/it/email.json | 5 ++- public/language/it/error.json | 1 + public/language/it/topic.json | 2 +- public/language/it/user.json | 1 + public/language/ja/email.json | 5 ++- public/language/ja/error.json | 1 + public/language/ja/topic.json | 2 +- public/language/ja/user.json | 1 + public/language/ko/email.json | 5 ++- public/language/ko/error.json | 1 + public/language/ko/topic.json | 2 +- public/language/ko/user.json | 1 + public/language/lt/email.json | 5 ++- public/language/lt/error.json | 1 + public/language/lt/topic.json | 2 +- public/language/lt/user.json | 1 + public/language/ms/email.json | 5 ++- public/language/ms/error.json | 1 + public/language/ms/topic.json | 2 +- public/language/ms/user.json | 1 + public/language/nb/email.json | 5 ++- public/language/nb/error.json | 1 + public/language/nb/topic.json | 2 +- public/language/nb/user.json | 1 + public/language/nl/category.json | 2 +- public/language/nl/email.json | 5 ++- public/language/nl/error.json | 13 ++++---- public/language/nl/notifications.json | 12 ++++---- public/language/nl/recent.json | 2 +- public/language/nl/search.json | 2 +- public/language/nl/topic.json | 2 +- public/language/nl/user.json | 9 +++--- public/language/pl/email.json | 5 ++- public/language/pl/error.json | 11 ++++--- public/language/pl/topic.json | 2 +- public/language/pl/user.json | 9 +++--- public/language/pt_BR/email.json | 5 ++- public/language/pt_BR/error.json | 1 + public/language/pt_BR/topic.json | 2 +- public/language/pt_BR/user.json | 1 + public/language/ro/email.json | 5 ++- public/language/ro/error.json | 1 + public/language/ro/topic.json | 2 +- public/language/ro/user.json | 1 + public/language/ru/email.json | 5 ++- public/language/ru/error.json | 1 + public/language/ru/topic.json | 2 +- public/language/ru/user.json | 1 + public/language/sc/email.json | 5 ++- public/language/sc/error.json | 1 + public/language/sc/topic.json | 2 +- public/language/sc/user.json | 1 + public/language/sk/email.json | 5 ++- public/language/sk/error.json | 1 + public/language/sk/topic.json | 2 +- public/language/sk/user.json | 1 + public/language/sv/email.json | 5 ++- public/language/sv/error.json | 13 ++++---- public/language/sv/pages.json | 2 +- public/language/sv/topic.json | 4 +-- public/language/sv/user.json | 9 +++--- public/language/th/email.json | 5 ++- public/language/th/error.json | 1 + public/language/th/topic.json | 2 +- public/language/th/user.json | 1 + public/language/tr/email.json | 5 ++- public/language/tr/error.json | 1 + public/language/tr/topic.json | 2 +- public/language/tr/user.json | 1 + public/language/vi/email.json | 39 +++++++++++++----------- public/language/vi/error.json | 31 ++++++++++--------- public/language/vi/global.json | 12 ++++---- public/language/vi/groups.json | 10 +++--- public/language/vi/login.json | 2 +- public/language/vi/modules.json | 24 +++++++-------- public/language/vi/pages.json | 2 +- public/language/vi/tags.json | 8 ++--- public/language/vi/topic.json | 26 ++++++++-------- public/language/vi/user.json | 15 ++++----- public/language/vi/users.json | 4 +-- public/language/zh_CN/category.json | 2 +- public/language/zh_CN/email.json | 5 ++- public/language/zh_CN/error.json | 13 ++++---- public/language/zh_CN/notifications.json | 12 ++++---- public/language/zh_CN/recent.json | 2 +- public/language/zh_CN/search.json | 2 +- public/language/zh_CN/topic.json | 2 +- public/language/zh_CN/user.json | 9 +++--- public/language/zh_TW/email.json | 5 ++- public/language/zh_TW/error.json | 1 + public/language/zh_TW/topic.json | 2 +- public/language/zh_TW/user.json | 1 + 141 files changed, 369 insertions(+), 214 deletions(-) diff --git a/public/language/ar/email.json b/public/language/ar/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/ar/email.json +++ b/public/language/ar/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/ar/error.json b/public/language/ar/error.json index feb589fd8f..6e6956b0ec 100644 --- a/public/language/ar/error.json +++ b/public/language/ar/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/ar/topic.json b/public/language/ar/topic.json index 930f642748..eed42e4f01 100644 --- a/public/language/ar/topic.json +++ b/public/language/ar/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "هذا الموضوع سوف ينقل إلى فئة", "fork_topic_instruction": "إضغط على الردود لتفريعهم", "fork_no_pids": "لم تختار أي رد", - "fork_success": "تفريع الموضوع بنجاح!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Enter your topic title here...", "composer.discard": "Discard", "composer.submit": "Submit", diff --git a/public/language/ar/user.json b/public/language/ar/user.json index a1aa9dc80f..f5a6be3c14 100644 --- a/public/language/ar/user.json +++ b/public/language/ar/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "هذا المستخدم ليس لديه أي أتباع :(", "follows_no_one": "هذا المستخدم لا يتبع أحد :(", "has_no_posts": "This user didn't post anything yet.", diff --git a/public/language/cs/email.json b/public/language/cs/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/cs/email.json +++ b/public/language/cs/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/cs/error.json b/public/language/cs/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/cs/error.json +++ b/public/language/cs/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/cs/topic.json b/public/language/cs/topic.json index fd1e316089..b3a0eb1aeb 100644 --- a/public/language/cs/topic.json +++ b/public/language/cs/topic.json @@ -71,7 +71,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": "Téma bylo úspěšně rozděleno!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Enter your topic title here...", "composer.discard": "Discard", "composer.submit": "Submit", diff --git a/public/language/cs/user.json b/public/language/cs/user.json index 13be6ba018..48e9c3655b 100644 --- a/public/language/cs/user.json +++ b/public/language/cs/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Tohoto uživatele nikdo nesleduje :(", "follows_no_one": "Tento uživatel nikoho nesleduje :(", "has_no_posts": "This user didn't post anything yet.", diff --git a/public/language/de/email.json b/public/language/de/email.json index e3c67dc47b..6936a71750 100644 --- a/public/language/de/email.json +++ b/public/language/de/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Aktuellste Themen vom %1", "digest.cta": "Klicke hier, um %1 zu besuchen", "digest.unsub.info": "Diese Zusammenfassung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.", - "digest.unsub.cta": "Klicke hier, um diese Einstellungen zu ändern", "digest.daily.no_topics": "Es gab heute keine aktiven Themen", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Dies ist eine Test-E-Mail, um zu überprüfen, ob der E-Mailer deines NodeBB korrekt eingestellt wurde.", + "unsub.cta": "Click here to alter those settings", "closing": "Danke!" } \ No newline at end of file diff --git a/public/language/de/error.json b/public/language/de/error.json index 4217b44a31..ddf1509f60 100644 --- a/public/language/de/error.json +++ b/public/language/de/error.json @@ -12,14 +12,15 @@ "invalid-title": "Ungültiger Titel", "invalid-user-data": "Ungültige Benutzerdaten", "invalid-password": "Ungültiges Passwort", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "Bitte gebe einen Benutzernamen und ein Passwort an", "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.", "username-too-short": "Benutzername ist zu kurz", - "username-too-long": "Username too long", + "username-too-long": "Der Benutzername ist zu lang", "user-banned": "Der Benutzer ist gesperrt", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Die Kategorie existiert nicht", "no-topic": "Das Thema existiert nicht", "no-post": "Der Beitrag existiert nicht", @@ -54,9 +55,9 @@ "upload-error": "Upload-Fehler: %1", "signature-too-long": "Die Signatur darf maximal %1 Zeichen enthalten!", "cant-chat-with-yourself": "Du kannst nicht mit dir selber chatten!", - "reputation-system-disabled": "Reputation system is disabled.", - "downvoting-disabled": "Downvoting is disabled", + "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": "Yo 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." + "not-enough-reputation-to-flag": "Deine Reputation ist nicht gut genug, um diesen Beitrag zu melden.", + "reload-failed": "Es ist ein Problem während des Reloads von NodeBB aufgetreten: \"%1\". NodeBB wird weiterhin clientseitige Assets bereitstellen, allerdings solltest du das, was du vor dem Reload gemacht hast, rückgängig machen." } \ No newline at end of file diff --git a/public/language/de/topic.json b/public/language/de/topic.json index c3642ea0bd..77fbaf000f 100644 --- a/public/language/de/topic.json +++ b/public/language/de/topic.json @@ -71,7 +71,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 aufgespalten!", + "fork_success": "Succesfully 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", diff --git a/public/language/de/user.json b/public/language/de/user.json index c264b87190..d3b4e12d45 100644 --- a/public/language/de/user.json +++ b/public/language/de/user.json @@ -4,8 +4,8 @@ "username": "Nutzername", "email": "E-Mail", "confirm_email": "E-Mail bestätigen", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "delete_account": "Konto löschen", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "Kompletter Name", "website": "Homepage", "location": "Wohnort", @@ -52,6 +52,7 @@ "digest_daily": "Täglich", "digest_weekly": "Wöchentlich", "digest_monthly": "Monatlich", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Dieser User hat noch keine Follower.", "follows_no_one": "Dieser User folgt noch niemandem :(", "has_no_posts": "Dieser Nutzer hat noch nichts gepostet.", @@ -64,6 +65,6 @@ "notification_sounds": "Ton abspielen, wenn ich eine Benachrichtigung erhalte.", "browsing": "Browser Einstellungen", "open_links_in_new_tab": "Externe Links in neuem Tab öffnen?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "follow_topics_you_reply_to": "Folge Themen, auf die du antwortest.", + "follow_topics_you_create": "Folge Themen, die du erstellst." } \ No newline at end of file diff --git a/public/language/en@pirate/email.json b/public/language/en@pirate/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/en@pirate/email.json +++ b/public/language/en@pirate/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/en@pirate/error.json b/public/language/en@pirate/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/en@pirate/error.json +++ b/public/language/en@pirate/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/en@pirate/topic.json b/public/language/en@pirate/topic.json index aa69261f90..6093dc2302 100644 --- a/public/language/en@pirate/topic.json +++ b/public/language/en@pirate/topic.json @@ -71,7 +71,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!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Enter your topic title here...", "composer.discard": "Discard", "composer.submit": "Submit", diff --git a/public/language/en@pirate/user.json b/public/language/en@pirate/user.json index a8efc3d857..fb50580f31 100644 --- a/public/language/en@pirate/user.json +++ b/public/language/en@pirate/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "This user doesn't have any followers :(", "follows_no_one": "This user isn't following anyone :(", "has_no_posts": "This user didn't post anything yet.", diff --git a/public/language/en_US/email.json b/public/language/en_US/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/en_US/email.json +++ b/public/language/en_US/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/en_US/error.json b/public/language/en_US/error.json index 200ce83066..c63073194a 100644 --- a/public/language/en_US/error.json +++ b/public/language/en_US/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/en_US/topic.json b/public/language/en_US/topic.json index 8ffca481ab..c64d0c9881 100644 --- a/public/language/en_US/topic.json +++ b/public/language/en_US/topic.json @@ -71,7 +71,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!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Enter your topic title here...", "composer.discard": "Discard", "composer.submit": "Submit", diff --git a/public/language/en_US/user.json b/public/language/en_US/user.json index 50848c7f83..58ea366320 100644 --- a/public/language/en_US/user.json +++ b/public/language/en_US/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "This user doesn't have any followers :(", "follows_no_one": "This user isn't following anyone :(", "has_no_posts": "This user didn't post anything yet.", diff --git a/public/language/es/email.json b/public/language/es/email.json index b791157e63..c83494b565 100644 --- a/public/language/es/email.json +++ b/public/language/es/email.json @@ -13,8 +13,11 @@ "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.", - "digest.unsub.cta": "Cliquea aquí para alterar estos ajustes", "digest.daily.no_topics": "No han habido temas activos en el día pasado", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Este es un email de prueba para verificar que el envío de email está ajustado correctamente para tu NodeBB", + "unsub.cta": "Click here to alter those settings", "closing": "¡Gracias!" } \ No newline at end of file diff --git a/public/language/es/error.json b/public/language/es/error.json index d3fa14fe91..79fd819d2f 100644 --- a/public/language/es/error.json +++ b/public/language/es/error.json @@ -20,6 +20,7 @@ "username-too-short": "El nombre de usuario es demasiado corto", "username-too-long": "Username too long", "user-banned": "Usuario expulsado", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "La categoría no existe", "no-topic": "El tema no existe.", "no-post": "La publicación no existe", diff --git a/public/language/es/topic.json b/public/language/es/topic.json index 1522291a09..d8eafd749c 100644 --- a/public/language/es/topic.json +++ b/public/language/es/topic.json @@ -71,7 +71,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": "¡Bifurcado con exito!", + "fork_success": "Succesfully 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", diff --git a/public/language/es/user.json b/public/language/es/user.json index 3d711138d2..32a7fe7340 100644 --- a/public/language/es/user.json +++ b/public/language/es/user.json @@ -52,6 +52,7 @@ "digest_daily": "Diariamente", "digest_weekly": "Semanalmente", "digest_monthly": "Mensualmente", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Este miembro no tiene seguidores. :(", "follows_no_one": "Este miembro no sigue a nadie. :(", "has_no_posts": "Este usuario aún no ha publicado nada.", diff --git a/public/language/et/email.json b/public/language/et/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/et/email.json +++ b/public/language/et/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/et/error.json b/public/language/et/error.json index 459b749ca0..51926c86b5 100644 --- a/public/language/et/error.json +++ b/public/language/et/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/et/topic.json b/public/language/et/topic.json index dc4dcc62cb..8b57bef58d 100644 --- a/public/language/et/topic.json +++ b/public/language/et/topic.json @@ -71,7 +71,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": "Edukalt forkisid teema!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Sisesta teema pealkiri siia...", "composer.discard": "Katkesta", "composer.submit": "Postita", diff --git a/public/language/et/user.json b/public/language/et/user.json index 4ecb16dac4..edde90c4cf 100644 --- a/public/language/et/user.json +++ b/public/language/et/user.json @@ -52,6 +52,7 @@ "digest_daily": "Igapäevaselt", "digest_weekly": "Iga nädal", "digest_monthly": "Iga kuu", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Sellel kasutajal pole ühtegi jälgijat :(", "follows_no_one": "See kasutaja ei jälgi kedagi :(", "has_no_posts": "See kasutaja pole midagi postitanud veel.", diff --git a/public/language/fa_IR/email.json b/public/language/fa_IR/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/fa_IR/email.json +++ b/public/language/fa_IR/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/fa_IR/error.json b/public/language/fa_IR/error.json index 29caeaa0c1..64f4d35823 100644 --- a/public/language/fa_IR/error.json +++ b/public/language/fa_IR/error.json @@ -20,6 +20,7 @@ "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": "چنین دیدگاهی وجود ندارد.", diff --git a/public/language/fa_IR/topic.json b/public/language/fa_IR/topic.json index 1c525fad8b..47f345fc6d 100644 --- a/public/language/fa_IR/topic.json +++ b/public/language/fa_IR/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "این جستار جابه‌جا خواهد شد به دستهٔ", "fork_topic_instruction": "دیدگاه‌هایی را که می‌خواهید به جستار تازه ببرید، برگزینید", "fork_no_pids": "هیچ دیدگاهی انتخاب نشده!", - "fork_success": "جستار با موفقیت منشعب شد.", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "سرنویس جستارتان را اینجا بنویسید...", "composer.discard": "دور بیانداز", "composer.submit": "بفرست", diff --git a/public/language/fa_IR/user.json b/public/language/fa_IR/user.json index f0212723e2..f460e31c7b 100644 --- a/public/language/fa_IR/user.json +++ b/public/language/fa_IR/user.json @@ -52,6 +52,7 @@ "digest_daily": "روزانه", "digest_weekly": "هفتگی", "digest_monthly": "ماهانه", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "این کاربر هیچ دنبال‌کننده‌ای ندارد :(", "follows_no_one": "این کاربر هیچ کسی را دنبال نمی‌کند :(", "has_no_posts": "این کاربر هنوز هیچ دیدگاهی نگذاشته است.", diff --git a/public/language/fi/email.json b/public/language/fi/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/fi/email.json +++ b/public/language/fi/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/fi/error.json b/public/language/fi/error.json index 738eb62699..73febab0c3 100644 --- a/public/language/fi/error.json +++ b/public/language/fi/error.json @@ -20,6 +20,7 @@ "username-too-short": "Käyttäjänimi on liian lyhyt", "username-too-long": "Username too long", "user-banned": "Käyttäjä on estetty", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategoriaa ei ole olemassa", "no-topic": "Aihetta ei ole olemassa", "no-post": "Viestiä ei ole olemassa", diff --git a/public/language/fi/topic.json b/public/language/fi/topic.json index ad1ef0f1a0..bccb155bf4 100644 --- a/public/language/fi/topic.json +++ b/public/language/fi/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Tämä keskustelu siirretään aihealueelle", "fork_topic_instruction": "Napsauta viestejä, jotka haluat haaroittaa", "fork_no_pids": "Ei valittuja viestejä!", - "fork_success": "Keskustelu haaroitettu onnistuneesti!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Syötä aiheesi otsikko tähän...", "composer.discard": "Hylkää", "composer.submit": "Lähetä", diff --git a/public/language/fi/user.json b/public/language/fi/user.json index d008e94b62..d8aecf0e3d 100644 --- a/public/language/fi/user.json +++ b/public/language/fi/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Kukaan ei seuraa tätä käyttäjää :(", "follows_no_one": "Tämä käyttäjä ei seuraa ketään :(", "has_no_posts": "Tämä käyttäjä ei ole kirjoittanut vielä mitään.", diff --git a/public/language/fr/category.json b/public/language/fr/category.json index c680ae7db9..47b8ebb764 100644 --- a/public/language/fr/category.json +++ b/public/language/fr/category.json @@ -4,5 +4,5 @@ "browsing": "parcouru par", "no_replies": "Personne n'a répondu", "share_this_category": "Partager cette catégorie", - "ignore": "Ignore" + "ignore": "Ignorer" } \ No newline at end of file diff --git a/public/language/fr/email.json b/public/language/fr/email.json index 88cb8c270a..88872a11fb 100644 --- a/public/language/fr/email.json +++ b/public/language/fr/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Derniers sujets de %1 :", "digest.cta": "Cliquez ici pour aller sur %1", "digest.unsub.info": "Ce message vous a été envoyé en raison de vos paramètres d'abonnement.", - "digest.unsub.cta": "Cliquez ici pour modifier ces paramètres", "digest.daily.no_topics": "Il n'y a eu aucun sujet actif ces derniers jours", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Ceci est un email de test pour vérifier que l'emailer est correctement configuré pour NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Merci !" } \ No newline at end of file diff --git a/public/language/fr/error.json b/public/language/fr/error.json index 821061cee1..bcc272f6d8 100644 --- a/public/language/fr/error.json +++ b/public/language/fr/error.json @@ -20,6 +20,7 @@ "username-too-short": "Nom d'utilisateur trop court", "username-too-long": "Username too long", "user-banned": "Utilisateur banni", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Cette catégorie n'existe pas", "no-topic": "Ce sujet n'existe pas", "no-post": "Ce message n'existe pas", diff --git a/public/language/fr/topic.json b/public/language/fr/topic.json index 47473793ec..f73fad2ed0 100644 --- a/public/language/fr/topic.json +++ b/public/language/fr/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Ce sujet sera déplacé vers la catégorie", "fork_topic_instruction": "Cliquez sur les postes à scinder", "fork_no_pids": "Aucun post sélectionné !", - "fork_success": "Sujet scindé !", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Entrer le titre du sujet ici ...", "composer.discard": "Abandonner", "composer.submit": "Envoyer", diff --git a/public/language/fr/user.json b/public/language/fr/user.json index 68a99a577e..76667e98ed 100644 --- a/public/language/fr/user.json +++ b/public/language/fr/user.json @@ -52,6 +52,7 @@ "digest_daily": "Quotidien", "digest_weekly": "Hebdomadaire", "digest_monthly": "Mensuel", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Cet utilisateur n'est suivi par personne :(", "follows_no_one": "Cet utilisateur ne suit personne :(", "has_no_posts": "Ce membre n'a rien posté pour le moment", diff --git a/public/language/he/email.json b/public/language/he/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/he/email.json +++ b/public/language/he/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/he/error.json b/public/language/he/error.json index 2df9c1b918..28cd04e663 100644 --- a/public/language/he/error.json +++ b/public/language/he/error.json @@ -20,6 +20,7 @@ "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": "פוסט אינו קיים", diff --git a/public/language/he/topic.json b/public/language/he/topic.json index 8bff5a472c..59d3ab6736 100644 --- a/public/language/he/topic.json +++ b/public/language/he/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "נושא זה יועבר לקטגוריה", "fork_topic_instruction": "לחץ על הפוסטים שברצונך לשכפל", "fork_no_pids": "לא בחרת אף פוסט!", - "fork_success": "הנושא שוכפל בהצלחה!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "הכנס את כותרת הנושא כאן...", "composer.discard": "מחק", "composer.submit": "שלח", diff --git a/public/language/he/user.json b/public/language/he/user.json index 292d31f90b..badb2cf544 100644 --- a/public/language/he/user.json +++ b/public/language/he/user.json @@ -52,6 +52,7 @@ "digest_daily": "יומי", "digest_weekly": "שבועי", "digest_monthly": "חודשי", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "למשתמש זה אין עוקבים :(", "follows_no_one": "משתמש זה אינו עוקב אחרי אחרים :(", "has_no_posts": "המשתמש הזה עוד לא פרסם כלום.", diff --git a/public/language/hu/email.json b/public/language/hu/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/hu/email.json +++ b/public/language/hu/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/hu/error.json b/public/language/hu/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/hu/error.json +++ b/public/language/hu/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/hu/topic.json b/public/language/hu/topic.json index 693d3466f5..44e43200be 100644 --- a/public/language/hu/topic.json +++ b/public/language/hu/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Ez a téma ebbe a kategóriába lesz mozgatva", "fork_topic_instruction": "Klikkelj azokra a hozzászólásokra, amiket szét akarsz szedni", "fork_no_pids": "Nincs hozzászólás kiválasztva!", - "fork_success": "Sikeresen szétválasztott topik!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Írd be a témanevet...", "composer.discard": "Elvet", "composer.submit": "Küldés", diff --git a/public/language/hu/user.json b/public/language/hu/user.json index 909e4ad553..fd14fd271c 100644 --- a/public/language/hu/user.json +++ b/public/language/hu/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Ezt a felhasználót nem követi senki :(", "follows_no_one": "Ez a felhasználó nem követ senkit :(", "has_no_posts": "Ennek a felhasználónak még nincsen hozzászólása.", diff --git a/public/language/it/email.json b/public/language/it/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/it/email.json +++ b/public/language/it/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/it/error.json b/public/language/it/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/it/error.json +++ b/public/language/it/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/it/topic.json b/public/language/it/topic.json index 5f18f9cd39..2efb613bca 100644 --- a/public/language/it/topic.json +++ b/public/language/it/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Questa discussione verrà spostata nella categoria", "fork_topic_instruction": "Clicca sui post che vuoi dividere", "fork_no_pids": "Nessun post selezionato!", - "fork_success": "Discussione divisa con successo!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Inserisci qui il titolo della discussione...", "composer.discard": "Annulla", "composer.submit": "Invia", diff --git a/public/language/it/user.json b/public/language/it/user.json index d490e3e1ef..18acd1c232 100644 --- a/public/language/it/user.json +++ b/public/language/it/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Questo utente non è seguito da nessuno :(", "follows_no_one": "Questo utente non segue nessuno :(", "has_no_posts": "Questo utente non ha ancora postato nulla.", diff --git a/public/language/ja/email.json b/public/language/ja/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/ja/email.json +++ b/public/language/ja/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/ja/error.json b/public/language/ja/error.json index 3d88578169..0d6aad1afd 100644 --- a/public/language/ja/error.json +++ b/public/language/ja/error.json @@ -20,6 +20,7 @@ "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": "板が存在しない", "no-topic": "スレッドが存在しない", "no-post": "ポストが存在しない", diff --git a/public/language/ja/topic.json b/public/language/ja/topic.json index 7d24e2e34f..94366f766e 100644 --- a/public/language/ja/topic.json +++ b/public/language/ja/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "スレッドはこちらのカテゴリへ移動", "fork_topic_instruction": "フォークしたいポストをクリックして", "fork_no_pids": "ポストが選択されていません!", - "fork_success": "スレッドをフォークできました!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "スレッドのタイトルを入力して...", "composer.discard": "破棄する", "composer.submit": "保存する", diff --git a/public/language/ja/user.json b/public/language/ja/user.json index ddb43c4dd5..0c683c1b86 100644 --- a/public/language/ja/user.json +++ b/public/language/ja/user.json @@ -52,6 +52,7 @@ "digest_daily": "デイリー", "digest_weekly": "ウィークリー", "digest_monthly": "マンスリー", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "フォロワーはまだいません :(", "follows_no_one": "フォロー中のユーザーはまだいません :(", "has_no_posts": "まだポストを投稿したことありません。", diff --git a/public/language/ko/email.json b/public/language/ko/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/ko/email.json +++ b/public/language/ko/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/ko/error.json b/public/language/ko/error.json index fd74542ee3..be2363f55a 100644 --- a/public/language/ko/error.json +++ b/public/language/ko/error.json @@ -20,6 +20,7 @@ "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": "존재하지 않는 게시물입니다.", diff --git a/public/language/ko/topic.json b/public/language/ko/topic.json index 3619cdc736..7e4d14a405 100644 --- a/public/language/ko/topic.json +++ b/public/language/ko/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "이 주제를 지정한 카테고리로 이동합니다.", "fork_topic_instruction": "복제할 게시물을 선택하세요.", "fork_no_pids": "게시물이 선택되지 않았습니다.", - "fork_success": "성공적으로 주제를 복제했습니다.", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "여기에 제목을 입력하세요.", "composer.discard": "취소", "composer.submit": "등록", diff --git a/public/language/ko/user.json b/public/language/ko/user.json index e3b7b29e83..fb0625f04f 100644 --- a/public/language/ko/user.json +++ b/public/language/ko/user.json @@ -52,6 +52,7 @@ "digest_daily": "매일", "digest_weekly": "매주", "digest_monthly": "매월", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "아무도 이 사용자를 팔로우하지 않습니다.", "follows_no_one": "이 사용자는 아무도 팔로우하지 않습니다.", "has_no_posts": "이 사용자는 게시물을 작성하지 않았습니다.", diff --git a/public/language/lt/email.json b/public/language/lt/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/lt/email.json +++ b/public/language/lt/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/lt/error.json b/public/language/lt/error.json index f41fc62c24..48edfbb72a 100644 --- a/public/language/lt/error.json +++ b/public/language/lt/error.json @@ -20,6 +20,7 @@ "username-too-short": "Slapyvardis per trumpas", "username-too-long": "Username too long", "user-banned": "Vartotojas užblokuotas", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategorija neegzistuoja", "no-topic": "Tema neegzistuoja", "no-post": "Pranešimas neegzistuoja", diff --git a/public/language/lt/topic.json b/public/language/lt/topic.json index 2eb059c363..2d1896a77c 100644 --- a/public/language/lt/topic.json +++ b/public/language/lt/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Ši tema bus perkelta į kategoriją", "fork_topic_instruction": "Pažymėkite ant įrašų, kuriuos norite perkelti į naują temą", "fork_no_pids": "Nepasirinktas joks įrašas!", - "fork_success": "Tema sėkmingai išskaidyta!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Įrašykite temos pavadinimą...", "composer.discard": "Atšaukti", "composer.submit": "Patvirtinti", diff --git a/public/language/lt/user.json b/public/language/lt/user.json index 1902cdd399..2823f89e95 100644 --- a/public/language/lt/user.json +++ b/public/language/lt/user.json @@ -52,6 +52,7 @@ "digest_daily": "Kas dieną", "digest_weekly": "Kas savaitę", "digest_monthly": "Kas mėnesį", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Šis vartotojas neturi jokių sekėjų :(", "follows_no_one": "Šis vartotojas nieko neseka :(", "has_no_posts": "Šis vartotojas dar neparašė nė vieno pranešimo.", diff --git a/public/language/ms/email.json b/public/language/ms/email.json index 3126f0da9d..8d02c3995f 100644 --- a/public/language/ms/email.json +++ b/public/language/ms/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Terima Kasih!" } \ No newline at end of file diff --git a/public/language/ms/error.json b/public/language/ms/error.json index 6c9f213d94..b6ad0bd586 100644 --- a/public/language/ms/error.json +++ b/public/language/ms/error.json @@ -20,6 +20,7 @@ "username-too-short": "Nama pengunna terlalu pendek", "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", diff --git a/public/language/ms/topic.json b/public/language/ms/topic.json index a40da8e224..dde98de2a8 100644 --- a/public/language/ms/topic.json +++ b/public/language/ms/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Topik ini akan dipindahkan kepada kategori", "fork_topic_instruction": "Clik kiriman yang anda hendak salin", "fork_no_pids": "Tiada kiriman yang dipilih", - "fork_success": "Berjaya menyalin topik!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Masukkan tajuk topik disini", "composer.discard": "Abaikan", "composer.submit": "Hantar", diff --git a/public/language/ms/user.json b/public/language/ms/user.json index 74fffdbd04..cff395f87a 100644 --- a/public/language/ms/user.json +++ b/public/language/ms/user.json @@ -52,6 +52,7 @@ "digest_daily": "Harian", "digest_weekly": "Mingguan", "digest_monthly": "Bulanan", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Pengguna ini tiada pengikut :(", "follows_no_one": "Pengguna ini tidak mengikuti sesiapa :(", "has_no_posts": "Pengguna ini masih belum mengirim sebarang pos", diff --git a/public/language/nb/email.json b/public/language/nb/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/nb/email.json +++ b/public/language/nb/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/nb/error.json b/public/language/nb/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/nb/error.json +++ b/public/language/nb/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json index 9aeddb6ecf..65f9f09bb5 100644 --- a/public/language/nb/topic.json +++ b/public/language/nb/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Dette emnet vil bli flyttet til kategorien", "fork_topic_instruction": "Trykk på innleggene du vil dele", "fork_no_pids": "Ingen innlegg valgt!", - "fork_success": "Innlegg ble delt!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Skriv din tråd-tittel her", "composer.discard": "Forkast", "composer.submit": "Send", diff --git a/public/language/nb/user.json b/public/language/nb/user.json index 5f3f3db9ab..7575e7f77f 100644 --- a/public/language/nb/user.json +++ b/public/language/nb/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daglig", "digest_weekly": "Ukentlig", "digest_monthly": "Månedlig", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Denne brukeren har ingen følgere :(", "follows_no_one": "Denne brukeren følger ingen :(", "has_no_posts": "Denne brukeren har ikke skrevet noe enda.", diff --git a/public/language/nl/category.json b/public/language/nl/category.json index 7c6651aa9a..45dbbf4d4d 100644 --- a/public/language/nl/category.json +++ b/public/language/nl/category.json @@ -4,5 +4,5 @@ "browsing": "verkennen", "no_replies": "Niemand heeft gereageerd", "share_this_category": "Deel deze categorie", - "ignore": "Ignore" + "ignore": "Negeren" } \ No newline at end of file diff --git a/public/language/nl/email.json b/public/language/nl/email.json index e662dce397..ee272f19f5 100644 --- a/public/language/nl/email.json +++ b/public/language/nl/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "De laatste onderwerpen van %1", "digest.cta": "Klik hier om deze website te bezoeken %1 ", "digest.unsub.info": "Deze overzicht was verzonden naar jou vanwege je abbonement instellingen", - "digest.unsub.cta": "Klik hier om u instellingen te wijzigen", "digest.daily.no_topics": "Er zijn geen actieve onderwerpen vandaag", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Dit is een test email om te verifiëren dat de email service correct is opgezet voor jou NodeBB", + "unsub.cta": "Click here to alter those settings", "closing": "Bedankt!" } \ No newline at end of file diff --git a/public/language/nl/error.json b/public/language/nl/error.json index 173db65af9..d27566d742 100644 --- a/public/language/nl/error.json +++ b/public/language/nl/error.json @@ -12,14 +12,15 @@ "invalid-title": "Ongeldige Titel!", "invalid-user-data": "Ongeldig Gebruikersdata", "invalid-password": "Ongeldig wachtwoord", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "Geef alsjeblieft een gebruikersnaam en wachtwoord op", "invalid-pagination-value": "Ongeldig pagineringswaarde", "username-taken": "Gebruikersnaam is al bezet", "email-taken": "Email adres is al gebruikt", "email-not-confirmed": "U email adres is niet bevestigd, Klik hier om uw email adres te bevestigen", "username-too-short": "Gebruikersnaam is te kort", - "username-too-long": "Username too long", + "username-too-long": "Gebruikersnaam is te lang", "user-banned": "Gebruiker verbannen", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Categorie bestaat niet", "no-topic": "Onderwerp bestaat niet", "no-post": "Bericht bestaat niet", @@ -54,9 +55,9 @@ "upload-error": "Upload Fout : %1", "signature-too-long": "Deze handtekening kan niet groter zijn dan %1 karakters!", "cant-chat-with-yourself": "Je kan niet met jezelf chatten!", - "reputation-system-disabled": "Reputation system is disabled.", - "downvoting-disabled": "Downvoting is disabled", + "reputation-system-disabled": "Reputatie systeem is uitgeschakeld", + "downvoting-disabled": "Downvoten is uitgeschakeld", "not-enough-reputation-to-downvote": "U heeft niet de benodigde reputatie om dit bericht te downvoten", - "not-enough-reputation-to-flag": "Yo 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." + "not-enough-reputation-to-flag": "U heeft niet de benodigde reputatie om dit bericht te melden aan de admins", + "reload-failed": "NodeBB heeft een probleem geconstateerd tijdens het laden van: \"%1\".\nNodeBB blijft verder draaien. Het is wel verstandig om de actie wat u daarvoor heeft gedaan ongedaan te maken door te herladen." } \ No newline at end of file diff --git a/public/language/nl/notifications.json b/public/language/nl/notifications.json index 6559d5df3e..4c51c977b5 100644 --- a/public/language/nl/notifications.json +++ b/public/language/nl/notifications.json @@ -10,14 +10,14 @@ "new_notification": "een nieuwe notificatie", "you_have_unread_notifications": "U heeft ongelezen notificaties", "new_message_from": "Nieuw bericht van %1", - "upvoted_your_post_in": "%1 has upvoted your post in %2.", - "moved_your_post": "%1 has moved your post.", - "moved_your_topic": "%1 has moved your topic.", - "favourited_your_post_in": "%1 has favourited your post in %2.", - "user_flagged_post_in": "%1 flagged a post in %2", + "upvoted_your_post_in": "%1 heeft uw bericht geupvote in %2.", + "moved_your_post": "%1 heeft uw bericht verplaatst", + "moved_your_topic": "%1 heeft uw onderwerp verplaatst.", + "favourited_your_post_in": "%1 heeft uw bericht gefavoriet in %2.", + "user_flagged_post_in": "%1 rapporteerde een bericht in %2", "user_posted_to": "%1 heeft een reactie op het bericht gegeven aan %2", "user_mentioned_you_in": "%1 heeft u genoemd in %2", - "user_started_following_you": "%1 started following you.", + "user_started_following_you": "%1 volgt u nu.", "email-confirmed": "Email adres bevestigd", "email-confirmed-message": "Bedankt voor het bevestigen van uw email adres. Uw account is nu volledig actief.", "email-confirm-error": "Een fout vond plaats", diff --git a/public/language/nl/recent.json b/public/language/nl/recent.json index f111931b98..fbbfaaeb52 100644 --- a/public/language/nl/recent.json +++ b/public/language/nl/recent.json @@ -4,6 +4,6 @@ "week": "Week", "month": "Maand", "year": "Jaar", - "alltime": "All Time", + "alltime": "Intussen", "no_recent_topics": "Er zijn geen recente reacties." } \ No newline at end of file diff --git a/public/language/nl/search.json b/public/language/nl/search.json index 7b1aab07ca..cb61065a4e 100644 --- a/public/language/nl/search.json +++ b/public/language/nl/search.json @@ -1,4 +1,4 @@ { "results_matching": "%1 resulta(a)ten was een match \"%2\", (%3 seconds)", - "no-matches": "No posts found" + "no-matches": "Geen berichten gevonden" } \ No newline at end of file diff --git a/public/language/nl/topic.json b/public/language/nl/topic.json index 9a9d1a2f81..0530a16f5c 100644 --- a/public/language/nl/topic.json +++ b/public/language/nl/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Dit onderwerp zal verplaatst worden naar de categorie", "fork_topic_instruction": "Klik op de berichten die je wilt forken", "fork_no_pids": "Geen berichten geselecteerd!", - "fork_success": "Onderwerp is met succes gesplitst!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Vul de titel voor het onderwerp hier in...", "composer.discard": "Annuleren", "composer.submit": "Opslaan", diff --git a/public/language/nl/user.json b/public/language/nl/user.json index df0f112c6f..e91b069cae 100644 --- a/public/language/nl/user.json +++ b/public/language/nl/user.json @@ -4,8 +4,8 @@ "username": "Gebruikersnaam", "email": "Email", "confirm_email": "Bevestig uw email adres", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "delete_account": "Account Verwijderen", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "Volledige Naam", "website": "Website", "location": "Locatie", @@ -52,6 +52,7 @@ "digest_daily": "Dagelijks", "digest_weekly": "Weekelijks", "digest_monthly": "Maandelijks", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Deze gebruiker heeft geen volgers :(", "follows_no_one": "Deze gebruiker volgt niemand :(", "has_no_posts": "Deze gebruiker heeft nog geen berichten geplaatst", @@ -64,6 +65,6 @@ "notification_sounds": "Speel een geluid af wanneer ik een notificatie ontvang.", "browsing": "Zoek Instellingen", "open_links_in_new_tab": "Open de uitgaande links in een nieuw tabblad?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "follow_topics_you_reply_to": "Volg de onderwerpen waarop u gereageerd heeft.", + "follow_topics_you_create": "Volg de onderwerpen die u gecreëerd heeft." } \ No newline at end of file diff --git a/public/language/pl/email.json b/public/language/pl/email.json index 2e5df85e6a..9a154171c0 100644 --- a/public/language/pl/email.json +++ b/public/language/pl/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Ostatnie tematy z %1", "digest.cta": "Kliknij, by odwiedzić %1", "digest.unsub.info": "To podsumowanie zostało wysłane zgodnie z Twoimi ustawieniami.", - "digest.unsub.cta": "Kliknij tutaj, aby je zmienić", "digest.daily.no_topics": "Wczoraj nie było żadnych aktywnych tematów", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "To jest e-mail testowy, aby sprawdzić, czy poprawnie skonfigurowałeś e-mailer w swoim NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Dziękujemy!" } \ No newline at end of file diff --git a/public/language/pl/error.json b/public/language/pl/error.json index 75fd7e8daa..c91c2ad906 100644 --- a/public/language/pl/error.json +++ b/public/language/pl/error.json @@ -12,14 +12,15 @@ "invalid-title": "Błędny tytuł.", "invalid-user-data": "Błędne dane użytkownika.", "invalid-password": "Błędne hasło", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "Proszę podać nazwę użytkownika i hasło", "invalid-pagination-value": "Błędna wartość paginacji", "username-taken": "Login zajęty.", "email-taken": "E-mail zajęty.", "email-not-confirmed": "Twój email nie jest potwierdzony, kliknij tutaj aby go potwierdzić.", "username-too-short": "Nazwa użytkownika za krótka.", - "username-too-long": "Username too long", + "username-too-long": "Zbyt długa nazwa użytkownika", "user-banned": "Użytkownik zbanowany", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategoria nie istnieje.", "no-topic": "Temat nie istnieje", "no-post": "Post nie istnieje", @@ -54,9 +55,9 @@ "upload-error": "Błąd uploadu: %1", "signature-too-long": "Sygnatura nie może mieć więcej niż %1 znaków.", "cant-chat-with-yourself": "Nie możesz czatować ze sobą", - "reputation-system-disabled": "Reputation system is disabled.", - "downvoting-disabled": "Downvoting is disabled", + "reputation-system-disabled": "System reputacji został wyłączony", + "downvoting-disabled": "Ocena postów jest wyłączona", "not-enough-reputation-to-downvote": "Masz za mało reputacji by ocenić ten post.", - "not-enough-reputation-to-flag": "Yo do not have enough reputation to flag this post", + "not-enough-reputation-to-flag": "Nie masz wystarczającej reputacji by oflagować ten 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." } \ No newline at end of file diff --git a/public/language/pl/topic.json b/public/language/pl/topic.json index 6ef02c02a4..25ae1af224 100644 --- a/public/language/pl/topic.json +++ b/public/language/pl/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Ten wątek zostanie przeniesiony do kategorii", "fork_topic_instruction": "Zaznacz posty, które chcesz sklonować", "fork_no_pids": "Nie zaznaczyłeś żadnych postów!", - "fork_success": "Pomyślnie sklonowano wątek", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Wpisz tytuł wątku tutaj", "composer.discard": "Odrzuć", "composer.submit": "Wyślij", diff --git a/public/language/pl/user.json b/public/language/pl/user.json index 65a0258933..82b79963f7 100644 --- a/public/language/pl/user.json +++ b/public/language/pl/user.json @@ -4,8 +4,8 @@ "username": "Nazwa użytkownika", "email": "Adres e-mail", "confirm_email": "Potwierdź e-mail", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "delete_account": "Skasuj konto", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "Pełna nazwa", "website": "Strona WWW", "location": "Położenie", @@ -52,6 +52,7 @@ "digest_daily": "Codziennie", "digest_weekly": "Co tydzień", "digest_monthly": "Co miesiąc", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Ten użytkownik nie ma jeszcze żadnych obserwujących", "follows_no_one": "Użytkownik jeszcze nikogo nie obsweruje.", "has_no_posts": "Użytkownik nie napisał jeszcze żadnych postów.", @@ -64,6 +65,6 @@ "notification_sounds": "Odtwórz dźwięk po otrzymaniu powiadomienia.", "browsing": "Ustawienia szukania", "open_links_in_new_tab": "Otwierać linki zewnętrzne w nowych kartach?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "follow_topics_you_reply_to": "Śledź tematy, w których piszesz.", + "follow_topics_you_create": "Śledź swoje tematy." } \ No newline at end of file diff --git a/public/language/pt_BR/email.json b/public/language/pt_BR/email.json index f0b4cce398..2857f112a3 100644 --- a/public/language/pt_BR/email.json +++ b/public/language/pt_BR/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Últimos tópicos de %1", "digest.cta": "Clique aqui para visitar %1", "digest.unsub.info": "Este resumo foi enviado para você devido a configuração de assinatura", - "digest.unsub.cta": "Clique aqui para alterar suas configurações", "digest.daily.no_topics": "Não houve nenhum tópico ativo atualmente", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Este é um e-mail de teste, para verificar que o email está corretamente configurado no seu NodeBB.\n", + "unsub.cta": "Click here to alter those settings", "closing": "Obrigado!" } \ No newline at end of file diff --git a/public/language/pt_BR/error.json b/public/language/pt_BR/error.json index dd6fe32c3c..d6e0da1ede 100644 --- a/public/language/pt_BR/error.json +++ b/public/language/pt_BR/error.json @@ -20,6 +20,7 @@ "username-too-short": "Nome de usuário muito curto", "username-too-long": "Username too long", "user-banned": "Usuário banido", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Categoria não existe", "no-topic": "Tópico não existe", "no-post": "Post não existe", diff --git a/public/language/pt_BR/topic.json b/public/language/pt_BR/topic.json index 8a4912a100..a0f0caea3d 100644 --- a/public/language/pt_BR/topic.json +++ b/public/language/pt_BR/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Este tópico será movido para a categoria", "fork_topic_instruction": "Clique nos posts que você quer clonar", "fork_no_pids": "Nenhum post selecionado!", - "fork_success": "Clone realizado com sucesso!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Digite aqui o título para o seu tópico...", "composer.discard": "Descartar", "composer.submit": "Enviar", diff --git a/public/language/pt_BR/user.json b/public/language/pt_BR/user.json index 366c291a5d..78084398dd 100644 --- a/public/language/pt_BR/user.json +++ b/public/language/pt_BR/user.json @@ -52,6 +52,7 @@ "digest_daily": "Diariamente", "digest_weekly": "Semanalmente", "digest_monthly": "Mensalmente", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Este usuário não possui seguidores :(", "follows_no_one": "Este usuário não está seguindo ninguém :(", "has_no_posts": "Este usuário não postou nada ainda.", diff --git a/public/language/ro/email.json b/public/language/ro/email.json index 9c7da47629..7dd905af3f 100644 --- a/public/language/ro/email.json +++ b/public/language/ro/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Apasă aici pentru a vizita %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Mulțumesc!" } \ No newline at end of file diff --git a/public/language/ro/error.json b/public/language/ro/error.json index f8346aa636..a40ac5f0d0 100644 --- a/public/language/ro/error.json +++ b/public/language/ro/error.json @@ -20,6 +20,7 @@ "username-too-short": "Numele de utilizator este prea scurt", "username-too-long": "Username too long", "user-banned": "Utilizator banat", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Categoria nu există", "no-topic": "Subiectul nu există", "no-post": "Mesajul nu există", diff --git a/public/language/ro/topic.json b/public/language/ro/topic.json index 0463625d25..3bcdf5805e 100644 --- a/public/language/ro/topic.json +++ b/public/language/ro/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Acest subiect va fi mutat în categoria", "fork_topic_instruction": "Apasă pe mesajele care vrei sa le bifurci", "fork_no_pids": "Nu a fost selectat nici un mesaj!", - "fork_success": "Ai bifurcat mesajul cu succes!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Introdu numele subiectului aici ...", "composer.discard": "Renunță", "composer.submit": "Trimite", diff --git a/public/language/ro/user.json b/public/language/ro/user.json index 124f9076b6..1719ecce2e 100644 --- a/public/language/ro/user.json +++ b/public/language/ro/user.json @@ -52,6 +52,7 @@ "digest_daily": "Zilnic", "digest_weekly": "Săptămânal", "digest_monthly": "Lunar", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Pe acest utilizator nu îl urmărește nimeni :(", "follows_no_one": "Acest utilizator nu urmărește pe nimeni :(", "has_no_posts": "Acest utilizator nu a postat nici un mesaj până acuma.", diff --git a/public/language/ru/email.json b/public/language/ru/email.json index d0fc8fabed..5d463a1779 100644 --- a/public/language/ru/email.json +++ b/public/language/ru/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Последние темы %1", "digest.cta": "Кликните здесь для просмотра %1", "digest.unsub.info": "Вам была выслана сводка новостей в соответствии с вашими настройками.", - "digest.unsub.cta": "Кликните здесь для изменения ваших настроек.", "digest.daily.no_topics": "За минувший день новых тем нет.", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Это тестовое сообщение для проверки почтового сервиса NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Спасибо!" } \ No newline at end of file diff --git a/public/language/ru/error.json b/public/language/ru/error.json index 875a018f95..a715f9c9a2 100644 --- a/public/language/ru/error.json +++ b/public/language/ru/error.json @@ -20,6 +20,7 @@ "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": "Несуществующая запись", diff --git a/public/language/ru/topic.json b/public/language/ru/topic.json index 9757210077..5a97aa09ea 100644 --- a/public/language/ru/topic.json +++ b/public/language/ru/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Эта тема будет перенесена в категорию", "fork_topic_instruction": "Отметьте сообщения для ответвления", "fork_no_pids": "Сообщения не отмечены!", - "fork_success": "Ответвление темы создано!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Введите название темы...", "composer.discard": "Отменить", "composer.submit": "Подтвердить", diff --git a/public/language/ru/user.json b/public/language/ru/user.json index 6da3902849..e1902b30ee 100644 --- a/public/language/ru/user.json +++ b/public/language/ru/user.json @@ -52,6 +52,7 @@ "digest_daily": "За День", "digest_weekly": "За Неделю", "digest_monthly": "За Месяц", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Этого пользователя никто не читает :(", "follows_no_one": "Этот пользователь никого не читает :(", "has_no_posts": "Это пользователь еще ничего не написал.", diff --git a/public/language/sc/email.json b/public/language/sc/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/sc/email.json +++ b/public/language/sc/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/sc/error.json b/public/language/sc/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/sc/error.json +++ b/public/language/sc/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/sc/topic.json b/public/language/sc/topic.json index afc9d94ddd..b6eee990c6 100644 --- a/public/language/sc/topic.json +++ b/public/language/sc/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Custa arresonada at a èssere mòvida in sa creze", "fork_topic_instruction": "Sèbera is arresonos chi boles partzire", "fork_no_pids": "Perunu arresonu seberadu!", - "fork_success": "As partzidu s'arresonada!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Pone su tìtulu de s'arresonada inoghe...", "composer.discard": "Lassa a Pèrdere", "composer.submit": "Imbia", diff --git a/public/language/sc/user.json b/public/language/sc/user.json index 7c8781dfb8..826a3a82be 100644 --- a/public/language/sc/user.json +++ b/public/language/sc/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Custu impitadore non tenet perunu sighidore :(", "follows_no_one": "Custu impitadore no est sighende nissunu :(", "has_no_posts": "Custu impitadore no at ancora publicadu nudda.", diff --git a/public/language/sk/email.json b/public/language/sk/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/sk/email.json +++ b/public/language/sk/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/sk/error.json b/public/language/sk/error.json index 08c0106813..60262ff3e4 100644 --- a/public/language/sk/error.json +++ b/public/language/sk/error.json @@ -20,6 +20,7 @@ "username-too-short": "Username too short", "username-too-long": "Username too long", "user-banned": "Užívateľ je zakázaný", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategória neexistuje", "no-topic": "Téme neexistuje", "no-post": "Príspevok neexistuje", diff --git a/public/language/sk/topic.json b/public/language/sk/topic.json index 697c0880ca..72da1a0869 100644 --- a/public/language/sk/topic.json +++ b/public/language/sk/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Táto téma bude presunutá do kategórie", "fork_topic_instruction": "Vyber príspevky, ktoré chceš oddeliť", "fork_no_pids": "Žiadne príspevky neboli vybrané!", - "fork_success": "Téma bola úspešne rozdelená!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Vlož nadpis témy sem...", "composer.discard": "Zahodiť", "composer.submit": "Poslať", diff --git a/public/language/sk/user.json b/public/language/sk/user.json index cefdf45dfe..7b10ab4040 100644 --- a/public/language/sk/user.json +++ b/public/language/sk/user.json @@ -52,6 +52,7 @@ "digest_daily": "Denne", "digest_weekly": "Týždenne", "digest_monthly": "Mesačne", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Tohoto užívatela nikto nesleduje :(", "follows_no_one": "Tento užívateľ nikoho nesleduje :(", "has_no_posts": "Tento používateľ ešte nespravil príspevok", diff --git a/public/language/sv/email.json b/public/language/sv/email.json index 2a6f643862..5c84229840 100644 --- a/public/language/sv/email.json +++ b/public/language/sv/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Senaste ämnen från %1", "digest.cta": "Klicka här för att besöka %1", "digest.unsub.info": "Det här meddelandet fick du på grund av dina inställningar för prenumeration. ", - "digest.unsub.cta": "Klicka här för att ändra dom inställningarna", "digest.daily.no_topics": "Det verkar inte varit några aktiva ämnen dom senaste dagarna ", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "\nDet här är ett textmeddelande som verifierar att eposten är korrekt installerat för din NodeBB. ", + "unsub.cta": "Click here to alter those settings", "closing": "Tack!" } \ No newline at end of file diff --git a/public/language/sv/error.json b/public/language/sv/error.json index 2c10713a84..6f118116f3 100644 --- a/public/language/sv/error.json +++ b/public/language/sv/error.json @@ -12,14 +12,15 @@ "invalid-title": "Ogiltig rubrik.", "invalid-user-data": "Ogiltig användardata", "invalid-password": "Ogiltigt lösenord", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "Specificera både användarnamn och lösenord", "invalid-pagination-value": "Ogiltigt sidnummer", "username-taken": "Användarnamn upptaget", "email-taken": "Epostadress upptagen", "email-not-confirmed": "Din epostadress är ännu inte bekräftad. Klicka här för att bekräfta din epostadress.", "username-too-short": "Användarnamnet är för kort", - "username-too-long": "Username too long", + "username-too-long": "Användarnamnet är för långt", "user-banned": "Användare bannad", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategori hittades inte", "no-topic": "Ämne hittades inte", "no-post": "Inlägget hittades inte", @@ -54,9 +55,9 @@ "upload-error": "Fel vid uppladdning: %1", "signature-too-long": "Signaturer kan inte vara längre än %1 tecken.", "cant-chat-with-yourself": "Du kan inte chatta med dig själv.", - "reputation-system-disabled": "Reputation system is disabled.", - "downvoting-disabled": "Downvoting is disabled", + "reputation-system-disabled": "Ryktessystemet är inaktiverat.", + "downvoting-disabled": "Nedröstning är inaktiverat", "not-enough-reputation-to-downvote": "Du har inte tillräckligt förtroende för att rösta ner det här meddelandet", - "not-enough-reputation-to-flag": "Yo 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." + "not-enough-reputation-to-flag": "Du har inte tillräckligt förtroende för att flagga det här inlägget.", + "reload-failed": "NodeBB stötte på problem med att ladda om: \"%1\". NodeBB kommer fortsätta servera den befintliga resurser till klienten, men du borde återställa det du gjorde alldeles innan du försökte ladda om." } \ No newline at end of file diff --git a/public/language/sv/pages.json b/public/language/sv/pages.json index c4c0efc382..72c9d13e33 100644 --- a/public/language/sv/pages.json +++ b/public/language/sv/pages.json @@ -5,7 +5,7 @@ "recent": "Senaste ämnena", "users": "Registrerade användare", "notifications": "Notiser", - "tags": "Topics tagged under \"%1\"", + "tags": "Ämnen märkta med \"%1\"", "user.edit": "Ändrar \"%1\"", "user.following": "Personer %1 Följer", "user.followers": "Personer som följer %1", diff --git a/public/language/sv/topic.json b/public/language/sv/topic.json index 8615e49c77..f2f1adb18d 100644 --- a/public/language/sv/topic.json +++ b/public/language/sv/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Detta ämne kommer bli flytta till kategori", "fork_topic_instruction": "Klicka på de inlägg du vill grena", "fork_no_pids": "Inga inlägg valda!", - "fork_success": "Grening av inlägg lyckad!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Skriv in ämnets titel här...", "composer.discard": "Avbryt", "composer.submit": "Spara", @@ -87,7 +87,7 @@ "more_users_and_guests": "%1 fler användare() och %2 gäst(er)", "more_users": "%1 fler användare()", "more_guests": "1% fler gäst(er)", - "users_and_others": "%1 and %2 others", + "users_and_others": "%1 och %2 andra", "sort_by": "Sortera på", "oldest_to_newest": "Äldst till nyaste", "newest_to_oldest": "Nyaste till äldst", diff --git a/public/language/sv/user.json b/public/language/sv/user.json index e4e4c01dcb..e4e18aafaa 100644 --- a/public/language/sv/user.json +++ b/public/language/sv/user.json @@ -4,8 +4,8 @@ "username": "Användarnamn", "email": "Epost", "confirm_email": "Bekräfta epostadress ", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "delete_account": "Ta bort ämne", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "Hela namnet", "website": "Webbsida", "location": "Plats", @@ -52,6 +52,7 @@ "digest_daily": "Daligen", "digest_weekly": "Veckovis", "digest_monthly": "Månadsvis", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Denna användare har inga följare :(", "follows_no_one": "Denna användare följer ingen :(", "has_no_posts": "Denna användare har inte gjort några inlägg än.", @@ -64,6 +65,6 @@ "notification_sounds": "Spela ett ljud när du får en notis.", "browsing": "Inställning för bläddring", "open_links_in_new_tab": "Öppna utgående länkar på ny flik?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "follow_topics_you_reply_to": "Följ ämnen so du svarat på.", + "follow_topics_you_create": "Följ ämnen du skapat." } \ No newline at end of file diff --git a/public/language/th/email.json b/public/language/th/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/th/email.json +++ b/public/language/th/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/th/error.json b/public/language/th/error.json index 26e3c9d80c..f90d459cce 100644 --- a/public/language/th/error.json +++ b/public/language/th/error.json @@ -20,6 +20,7 @@ "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", diff --git a/public/language/th/topic.json b/public/language/th/topic.json index c72667cb33..0736d6be97 100644 --- a/public/language/th/topic.json +++ b/public/language/th/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "กระทู้นี้จะถูกย้ายไปที่หมวดหมู่", "fork_topic_instruction": "คลิกที่โพสที่คุณต้องการที่จะแยก", "fork_no_pids": "ไม่มีโพสต์ที่เลือก!", - "fork_success": "แยกกระทู้สำเร็จ", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "ป้อนชื่อกระทู้ของคุณที่นี่ ...", "composer.discard": "ยกเลิก", "composer.submit": "ส่ง", diff --git a/public/language/th/user.json b/public/language/th/user.json index f6d6861e31..7f75a2bcbb 100644 --- a/public/language/th/user.json +++ b/public/language/th/user.json @@ -52,6 +52,7 @@ "digest_daily": "Daily", "digest_weekly": "Weekly", "digest_monthly": "Monthly", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "ผู้ใช้รายนี้ไม่มีใครติดตาม :(", "follows_no_one": "ผู้ใช้รายนี้ไม่ติดตามใคร :(", "has_no_posts": "ผู้ใช้รายนี้ไม่ได้โพสต์อะไรเลย", diff --git a/public/language/tr/email.json b/public/language/tr/email.json index 96fd81431e..e1d294f543 100644 --- a/public/language/tr/email.json +++ b/public/language/tr/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "En güncel konular", "digest.cta": "Ziyaret etmek için buraya tıklayın", "digest.unsub.info": "Bu e-posta seçtiğiniz ayarlar nedeniyle gönderildi.", - "digest.unsub.cta": "Bu ayarları değiştirmek için buraya tıklayın", "digest.daily.no_topics": "Geçtiğimiz gün içinde aktif bir konu yok.", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "Bu ileti NodeBB e-posta ayarlarınızın doğru çalışıp çalışmadığını kontrol etmek için gönderildi.", + "unsub.cta": "Click here to alter those settings", "closing": "Teşekkürler!" } \ No newline at end of file diff --git a/public/language/tr/error.json b/public/language/tr/error.json index 6c6a37053a..86b7a7567d 100644 --- a/public/language/tr/error.json +++ b/public/language/tr/error.json @@ -20,6 +20,7 @@ "username-too-short": "Kullanıcı ismi çok kısa", "username-too-long": "Username too long", "user-banned": "Kullanıcı Yasaklı", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Kategori Yok", "no-topic": "Başlık Yok", "no-post": "İleti Yok", diff --git a/public/language/tr/topic.json b/public/language/tr/topic.json index 0716b3e6f1..f4968ca57a 100644 --- a/public/language/tr/topic.json +++ b/public/language/tr/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "Bu konu kategorisine taşınacak", "fork_topic_instruction": "Ayırmak istediğiniz iletileri tıklayın", "fork_no_pids": "Hiç bir ileti seçilmedi!", - "fork_success": "Başlık başarıyla ayrıldı!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Başlık ismini buraya girin...", "composer.discard": "Vazgeç", "composer.submit": "Gönder", diff --git a/public/language/tr/user.json b/public/language/tr/user.json index fb1316fd7e..1327933256 100644 --- a/public/language/tr/user.json +++ b/public/language/tr/user.json @@ -52,6 +52,7 @@ "digest_daily": "Günlük", "digest_weekly": "Haftalık", "digest_monthly": "Aylık", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Bu kullanıcının hiç takipçisi yok :(", "follows_no_one": "Bu kullanıcı kimseyi takip etmiyor :(", "has_no_posts": "Bu kullanıcı henüz birşey göndermedi.", diff --git a/public/language/vi/email.json b/public/language/vi/email.json index 98e591ab02..60825a08d6 100644 --- a/public/language/vi/email.json +++ b/public/language/vi/email.json @@ -1,20 +1,23 @@ { - "password-reset-requested": "Password Reset Requested - %1!", - "welcome-to": "Welcome to %1", - "greeting_no_name": "Hello", - "greeting_with_name": "Hello %1", - "welcome.text1": "Thank you for registering with %1!", - "welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.", - "welcome.cta": "Click here to confirm your email address", - "reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.", - "reset.text2": "To continue with the password reset, please click on the following link:", - "reset.cta": "Click here to reset your password", - "digest.notifications": "You have some unread notifications from %1:", - "digest.latest_topics": "Latest topics from %1", - "digest.cta": "Click here to visit %1", - "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", - "digest.daily.no_topics": "There have been no active topics in the past day", - "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", - "closing": "Thanks!" + "password-reset-requested": "Yêu cầu khởi tạo lại mật khẩu - %1!", + "welcome-to": "Chào mừng đến với %1", + "greeting_no_name": "Xin chào", + "greeting_with_name": "Xin chào %1", + "welcome.text1": "Cảm ơn bạn đã đăng ký tại %1!", + "welcome.text2": "Để kích hoạt đầy đủ tính năng của tài khoản, chúng tôi cần xác định rằng bạn là chủ của địa chỉ email mà bạn đã đăng ký.", + "welcome.cta": "Click vào đây để xác nhận địa chỉ email", + "reset.text1": "Chúng tôi nhận được yêu cầu khởi tạo lại mật khẩu của bạn, rất có thể vì bạn đã quên mất nó. Nếu không đúng, hãy bỏ qua email này.", + "reset.text2": "Để khởi tạo lại mật khẩu, hãy click vào liên kết sau:", + "reset.cta": "Click vào đây để khởi tạo lại mật khẩu", + "digest.notifications": "Bạn có vài thông báo chưa duyệt từ %1:", + "digest.latest_topics": "Chủ đề mới nhất từ %1", + "digest.cta": "Click vào đây để truy cập %1", + "digest.unsub.info": "Tập san này được gửi đến bạn dựa theo cài đặt theo dõi của bạn.", + "digest.daily.no_topics": "Không có chủ đề nào có hoạt động trong ngày hôm qua.", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", + "test.text1": "Đây là email kiểm tra để xác nhận rằng trình gửi email đã được cài đặt một cách chính xác cho NodeBB của bạn.", + "unsub.cta": "Click here to alter those settings", + "closing": "Xin cảm ơn!" } \ No newline at end of file diff --git a/public/language/vi/error.json b/public/language/vi/error.json index 189c8de1a5..c375b9fd51 100644 --- a/public/language/vi/error.json +++ b/public/language/vi/error.json @@ -1,25 +1,26 @@ { "invalid-data": "Dữ liệu không hợp lệ", "not-logged-in": "Bạn không được đăng nhập.", - "account-locked": "Your account has been locked temporarily", - "search-requires-login": "Searching requires an account! Please login or register!", + "account-locked": "Tài khoản của bạn đã tạm thời bị khóa", + "search-requires-login": "Bạn cần đăng nhập để thực hiện việc tìm kiếm! Xin hãy đăng nhập hoặc đăng ký!", "invalid-cid": "Danh mục ID không hợp lệ", "invalid-tid": "ID chủ đề không hợp lệ", "invalid-pid": "ID bài viết không hợp lệ", "invalid-uid": "ID tài khoản không hợp lệ", "invalid-username": "Tên đăng nhập không hợp lệ", "invalid-email": "Email không hợp lệ", - "invalid-title": "Invalid title!", + "invalid-title": "Tiêu đề không hợp lệ!", "invalid-user-data": "Dữ liệu tài khoản không hợp lệ", "invalid-password": "Mật khẩu không hợp lệ", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "Xin hãy nhập cả tên đăng nhập và mật khẩu", "invalid-pagination-value": "Số trang không hợp lệ", "username-taken": "Tên đăng nhập đã tồn tại", "email-taken": "Email đã tồn tại", - "email-not-confirmed": "Your email is not confirmed, please click here to confirm your email.", - "username-too-short": "Username too short", - "username-too-long": "Username too long", + "email-not-confirmed": "Địa chỉ email của bạn chưa được xác nhận, hãy click vào đây để xác nhận email.", + "username-too-short": "Tên đăng nhập quá ngắn", + "username-too-long": "Tên đăng nhập quá dài", "user-banned": "Tài khoản bị ban", + "user-too-new": "You need to wait %1 seconds before making your first post!", "no-category": "Phần mục không tồn tại", "no-topic": "Chủ đề không tồn tại", "no-post": "Bài viết không tồn tại", @@ -27,7 +28,7 @@ "no-user": "Tài khoản không tồn tại", "no-teaser": "Teaser không tồn tại", "no-privileges": "Bạn không đủ quyền cho hành động này", - "no-emailers-configured": "No email plugins were loaded, so a test email could not be sent", + "no-emailers-configured": "Không có trình cắm email nào được tải, vì vậy email kiểm tra không thể gửi được", "category-disabled": "Danh mục bị disabled", "topic-locked": "Chủ đề bị khóa", "still-uploading": "Vui lòng chờ upload", @@ -38,7 +39,7 @@ "file-too-big": "Kích thước file tối đa %1kb", "cant-vote-self-post": "Bạn không thể vote cho chính bài viết của bạn", "already-favourited": "Bạn đã bấm yêu thích cho bài viết này", - "already-unfavourited": "You already unfavourited this post", + "already-unfavourited": "Bạn đã bỏ thích bài này", "cant-ban-other-admins": "Bạn không thể ban được các admin khác", "invalid-image-type": "Kiểu hình ảnh không hợp lệ", "group-name-too-short": "Tên nhóm quá ngắn", @@ -51,12 +52,12 @@ "topic-thumbnails-are-disabled": "Thumbnails cho chủ đề đã bị tắt", "invalid-file": "File không hợp lệ", "uploads-are-disabled": "Đã khóa lựa chọn tải lên", - "upload-error": "Upload Error : %1", + "upload-error": "Lỗi tải lên : %1", "signature-too-long": "Chứ ký không được dài quá %1 ký tự", "cant-chat-with-yourself": "Bạn không thể chat với chính bạn!", - "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", - "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." + "reputation-system-disabled": "Hệ thống tín nhiệm đã bị vô hiệu hóa.", + "downvoting-disabled": "Downvote đã bị tắt", + "not-enough-reputation-to-downvote": "Bạn không có đủ phiếu tín nhiệm để downvote bài này", + "not-enough-reputation-to-flag": "Bạn không đủ phiếu tín nhiệm để gắn cờ bài này", + "reload-failed": "NodeBB gặp lỗi trong khi tải lại: \"%1\". NodeBB sẽ tiếp tục hoạt động với dữ liệu trước đó, mặc dù vậy bạn nên tháo gỡ những gì bạn đã làm để trước khi tải lại." } \ No newline at end of file diff --git a/public/language/vi/global.json b/public/language/vi/global.json index 5554138a31..33447ba786 100644 --- a/public/language/vi/global.json +++ b/public/language/vi/global.json @@ -13,13 +13,13 @@ "please_log_in": "Xin hãy đăng nhập", "logout": "Đăng xuất", "posting_restriction_info": "Hiện giờ chỉ có các thành viên mới được quyền gửi bài viết, hãy nhấn vào đây để đăng nhập", - "welcome_back": "Welcome Back", + "welcome_back": "Chào mừng bạn quay lại", "you_have_successfully_logged_in": "Bạn đã đăng nhập thành công", "save_changes": "Lưu thay đổi", "close": "Đóng lại", "pagination": "Số trang", - "pagination.out_of": "%1 out of %2", - "pagination.enter_index": "Enter index", + "pagination.out_of": "%1 trong số %2", + "pagination.enter_index": "Nhập khóa", "header.admin": "Quản trị viên", "header.recent": "Gần đây", "header.unread": "Chưa đọc", @@ -38,7 +38,7 @@ "alert.success": "Thành công", "alert.error": "Lỗi", "alert.banned": "Bị cấm", - "alert.banned.message": "You have just been banned, you will now be logged out.", + "alert.banned.message": "Bạn vừa bị khóa tài khoản, bạn sẽ tự động thoát ra ngay bây giờ.", "alert.unfollow": "Bạn đã không còn theo dõi %1!", "alert.follow": "Bạn giờ đang theo dõi %1!", "online": "Đang online", @@ -70,6 +70,6 @@ "language": "Ngôn ngữ", "guest": "Khách", "guests": "Số khách", - "updated.title": "Forum Updated", - "updated.message": "This forum has just been updated to the latest version. Click here to refresh the page." + "updated.title": "Cập nhật diễn đàn", + "updated.message": "Diễn đàn đã được cập nhật bản mới nhất. Click vào đây để tải lại trang." } \ No newline at end of file diff --git a/public/language/vi/groups.json b/public/language/vi/groups.json index c00c111e11..2ae6844485 100644 --- a/public/language/vi/groups.json +++ b/public/language/vi/groups.json @@ -1,7 +1,7 @@ { - "view_group": "View Group", - "details.title": "Group Details", - "details.members": "Member List", - "details.has_no_posts": "This group's members have not made any posts.", - "details.latest_posts": "Latest Posts" + "view_group": "Xem nhóm", + "details.title": "Chi tiết nhóm", + "details.members": "Danh sách thành viên", + "details.has_no_posts": "Nhóm thành viên này chưa viết bài viết nào.", + "details.latest_posts": "Bài mới nhất" } \ No newline at end of file diff --git a/public/language/vi/login.json b/public/language/vi/login.json index 25973cd323..0190bd059e 100644 --- a/public/language/vi/login.json +++ b/public/language/vi/login.json @@ -5,5 +5,5 @@ "alternative_logins": "Đăng nhập bằng tên khác", "failed_login_attempt": "Đăng nhập thất bại, xin hãy thử lại", "login_successful": "Bạn đã đăng nhập thành công!", - "dont_have_account": "Don't have an account?" + "dont_have_account": "Chưa có tài khoản?" } \ No newline at end of file diff --git a/public/language/vi/modules.json b/public/language/vi/modules.json index 4795f64e74..6afe9ffa9c 100644 --- a/public/language/vi/modules.json +++ b/public/language/vi/modules.json @@ -1,18 +1,18 @@ { "chat.chatting_with": "Chat với ", - "chat.placeholder": "Type chat message here, press enter to send", + "chat.placeholder": "Nhập tin nhắn ở đây, nhấn enter để gửi", "chat.send": "Gửi đi", "chat.no_active": "Bạn hiện giờ không có cuộc chat nào", "chat.user_typing": "%1b đang gõ", - "chat.user_has_messaged_you": "%1 has messaged you.", - "chat.see_all": "See all Chats", - "chat.no-messages": "Please select a recipient to view chat message history", - "chat.recent-chats": "Recent Chats", - "chat.contacts": "Contacts", - "chat.message-history": "Message History", - "chat.pop-out": "Pop out chat", - "chat.maximize": "Maximize", - "composer.user_said_in": "%1 said in %2:", - "composer.user_said": "%1 said:", - "composer.discard": "Are you sure you wish to discard this post?" + "chat.user_has_messaged_you": "%1 đã gửi tin cho bạn.", + "chat.see_all": "Tất cả tin nhắn.", + "chat.no-messages": "Hãy chọn 1 tài khoản để xem lịch sử chat", + "chat.recent-chats": "Vừa chat", + "chat.contacts": "Liên hệ", + "chat.message-history": "Lịch sử tin nhắn", + "chat.pop-out": "Bật cửa sổ chat", + "chat.maximize": "Phóng to", + "composer.user_said_in": "%1 đã nói trong %2:", + "composer.user_said": "%1 đã nói:", + "composer.discard": "Bạn có chắc chắn hủy bỏ bài viết này?" } \ No newline at end of file diff --git a/public/language/vi/pages.json b/public/language/vi/pages.json index a5ee695599..87143000ad 100644 --- a/public/language/vi/pages.json +++ b/public/language/vi/pages.json @@ -5,7 +5,7 @@ "recent": "Chủ đề gần đây", "users": "Số người dùng đã đăng ký", "notifications": "Thông báo", - "tags": "Topics tagged under \"%1\"", + "tags": "Chủ đề được tag theo \"%1\"", "user.edit": "Chỉnh sửa \"%1\"", "user.following": "Người mà %1 theo dõi", "user.followers": "Người đang theo dõi %1", diff --git a/public/language/vi/tags.json b/public/language/vi/tags.json index f065d4bbfa..e309559c94 100644 --- a/public/language/vi/tags.json +++ b/public/language/vi/tags.json @@ -1,6 +1,6 @@ { - "no_tag_topics": "There are no topics with this tag.", - "tags": "Tags", - "enter_tags_here": "Enter tags here. Press enter after each tag.", - "no_tags": "There are no tags yet." + "no_tag_topics": "Không có bài viết nào với nhãn này.", + "tags": "Nhãn", + "enter_tags_here": "Nhập nhãn ở đây. Nhấn enter sau mỗi nhãn.", + "no_tags": "Chưa có nhãn nào." } \ No newline at end of file diff --git a/public/language/vi/topic.json b/public/language/vi/topic.json index 597c8cd4b9..baeccd2195 100644 --- a/public/language/vi/topic.json +++ b/public/language/vi/topic.json @@ -7,14 +7,14 @@ "post_is_deleted": "Bài gửi này đã bị xóa!", "profile": "Hồ sơ", "posted_by": "Được viết bởi %1", - "posted_by_guest": "Posted by Guest", + "posted_by_guest": "Đăng bởi khách", "chat": "Chat", "notify_me": "Được thông báo khi có trả lời mới trong chủ đề này", "quote": "Trích dẫn", "reply": "Trả lời", "edit": "Chỉnh sửa", "delete": "Xóa", - "purge": "Purge", + "purge": "Xóa hẳn", "restore": "Phục hồi", "move": "Chuyển đi", "fork": "Fork", @@ -23,7 +23,7 @@ "share": "Chia sẻ", "tools": "Công cụ", "flag": "Flag", - "locked": "Locked", + "locked": "Khóa", "bookmark_instructions": "Bấm vào đây để quay về hoặc đóng lại để hủy", "flag_title": "Flag bài viết này để chỉnh sửa", "flag_confirm": "Bạn có chắc là muốn flag bài viết này không?", @@ -49,12 +49,12 @@ "thread_tools.delete_confirm": "Bạn có chắc là muốn hủy thread này không?", "thread_tools.restore": "Phục hồi chủ đề", "thread_tools.restore_confirm": "Bạn có chắc là muốn phục hồi thread này không", - "thread_tools.purge": "Purge Topic", - "thread_tools.purge_confirm": "Are you sure you want to purge this thread?", + "thread_tools.purge": "Xóa hẳn chủ đề", + "thread_tools.purge_confirm": "Bạn có chắc muốn xóa hẳn chủ đề này?", "topic_move_success": "Đã chuyển thành công chủ đề này sang %1", "post_delete_confirm": "Bạn có chắc là muốn xóa bài gửi này không?", "post_restore_confirm": "Bạn có chắc là muốn phục hồi bài gửi này không?", - "post_purge_confirm": "Are you sure you want to purge this post?", + "post_purge_confirm": "Bạn có chắc muốn xóa hẳn bài này?", "load_categories": "Đang tải các phần mục", "disabled_categories_note": "Các phần mục bị khóa đã được đánh xám", "confirm_move": "Chuyển", @@ -64,14 +64,14 @@ "favourites.has_no_favourites": "Bạn đang không có yêu thích nào. Hãy yêu thích một vài bài viết để thấy được chúng tại đây!", "loading_more_posts": "Tải thêm các bài gửi khác", "move_topic": "Chuyển chủ đề", - "move_topics": "Move Topics", + "move_topics": "Di chuyển chủ đề", "move_post": "Chuyển bài gửi", "post_moved": "Đã chuyển bài gửi!", "fork_topic": "Fork chủ đề", "topic_will_be_moved_to": "Chủ đề này sẽ được chuyển tới phần mục", "fork_topic_instruction": "Nhấp vào bài gửi mà bạn muốn fork", "fork_no_pids": "Chưa chọn bài gửi nào!", - "fork_success": "Đã fork chủ đề thành công!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "Nhập tiêu đề cho chủ đề của bạn tại đây...", "composer.discard": "Loại bỏ", "composer.submit": "Gửi", @@ -87,9 +87,9 @@ "more_users_and_guests": "%1 người dùng và %2 khách nữa", "more_users": "%1 người dùng nữa", "more_guests": "%1 khách nữa", - "users_and_others": "%1 and %2 others", - "sort_by": "Sort by", - "oldest_to_newest": "Oldest to Newest", - "newest_to_oldest": "Newest to Oldest", - "most_votes": "Most votes" + "users_and_others": "%1 và%2 khác", + "sort_by": "Sắp xếp theo", + "oldest_to_newest": "Cũ đến mới", + "newest_to_oldest": "Mới đến cũ", + "most_votes": "Bình chọn nhiều nhất" } \ No newline at end of file diff --git a/public/language/vi/user.json b/public/language/vi/user.json index 1f5cb24b9a..1aeac40d09 100644 --- a/public/language/vi/user.json +++ b/public/language/vi/user.json @@ -3,9 +3,9 @@ "offline": "Offline", "username": "Tên truy cập", "email": "Email", - "confirm_email": "Confirm Email", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "confirm_email": "Xác nhận email", + "delete_account": "Xóa tài khoản", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "Tên đầy đủ", "website": "Website", "location": "Địa điểm", @@ -52,6 +52,7 @@ "digest_daily": "Hàng ngày", "digest_weekly": "Hàng tuần", "digest_monthly": "Hàng tháng", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "Người dùng này hiện chưa có ai theo dõi :(", "follows_no_one": "Người dùng này hiện chưa theo dõi ai :(", "has_no_posts": "Người dùng này chưa viết bài nào", @@ -62,8 +63,8 @@ "topics_per_page": "Số chủ đề trong một trang", "posts_per_page": "Số bài viết trong một trang", "notification_sounds": "Xuất hiện âm thanh khi bạn nhận được một thông báo", - "browsing": "Browsing Settings", - "open_links_in_new_tab": "Open outgoing links in new tab?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "browsing": "Đang xem cài đặt", + "open_links_in_new_tab": "Mở liên kết trong tab mới?", + "follow_topics_you_reply_to": "Theo dõi chủ đề mà bạn trả lời", + "follow_topics_you_create": "Theo dõi chủ đề bạn tạo" } \ No newline at end of file diff --git a/public/language/vi/users.json b/public/language/vi/users.json index 244b26154b..cda4f0b017 100644 --- a/public/language/vi/users.json +++ b/public/language/vi/users.json @@ -5,6 +5,6 @@ "search": "Tìm kiếm", "enter_username": "Gõ tên người dùng để tìm kiếm", "load_more": "Tải thêm", - "user-not-found": "User not found!", - "users-found-search-took": "%1 user(s) found! Search took %2 ms." + "user-not-found": "Tài khoản không tìm thấy!", + "users-found-search-took": "%1 tài khoản(s) tìm thấy! Tìm trong %2 mili giây." } \ No newline at end of file diff --git a/public/language/zh_CN/category.json b/public/language/zh_CN/category.json index 2f776788d1..933e12e3e1 100644 --- a/public/language/zh_CN/category.json +++ b/public/language/zh_CN/category.json @@ -4,5 +4,5 @@ "browsing": "正在浏览", "no_replies": "尚无回复", "share_this_category": "分享此版块", - "ignore": "Ignore" + "ignore": "忽略" } \ No newline at end of file diff --git a/public/language/zh_CN/email.json b/public/language/zh_CN/email.json index ae359e04fb..77b5e00903 100644 --- a/public/language/zh_CN/email.json +++ b/public/language/zh_CN/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "来自 %1 的最新主题", "digest.cta": "点击这里访问 %1", "digest.unsub.info": "根据您的订阅设置,为您发送此摘要。", - "digest.unsub.cta": "点击这里修改这些设置", "digest.daily.no_topics": "最近几天有一些未激活的主题", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "这是一封测试邮件,用来验证 NodeBB 的邮件配置是否设置正确。", + "unsub.cta": "Click here to alter those settings", "closing": "谢谢!" } \ No newline at end of file diff --git a/public/language/zh_CN/error.json b/public/language/zh_CN/error.json index 561c57a0da..56c19a26b2 100644 --- a/public/language/zh_CN/error.json +++ b/public/language/zh_CN/error.json @@ -12,14 +12,15 @@ "invalid-title": "无效标题!", "invalid-user-data": "无效用户数据", "invalid-password": "无效密码", - "invalid-username-or-password": "Please specify both a username and password", + "invalid-username-or-password": "请确认用户名和密码", "invalid-pagination-value": "无效页码", "username-taken": "用户名已注册", "email-taken": "电子邮箱已注册", "email-not-confirmed": "您的电子邮箱尚未确认,请点击这里确认您的电子邮箱。", "username-too-short": "用户名太短", - "username-too-long": "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": "帖子不存在", @@ -54,9 +55,9 @@ "upload-error": "上传错误:%1", "signature-too-long": "签名档不能超过 %1 字!", "cant-chat-with-yourself": "您不能和自己聊天!", - "reputation-system-disabled": "Reputation system is disabled.", - "downvoting-disabled": "Downvoting is disabled", + "reputation-system-disabled": "威望系统已禁用。", + "downvoting-disabled": "反对功能已禁用", "not-enough-reputation-to-downvote": "您还没有足够的威望为此帖扣分", - "not-enough-reputation-to-flag": "Yo 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." + "not-enough-reputation-to-flag": "您没有足够的威望标记此帖", + "reload-failed": "NodeBB 重新加载时遇到问题: \"%1\"。NodeBB 会继续给已存在的客户端组件服务,虽然您应该撤销在重新加载前执行的操作。" } \ No newline at end of file diff --git a/public/language/zh_CN/notifications.json b/public/language/zh_CN/notifications.json index 6e4faf216f..13d533bc53 100644 --- a/public/language/zh_CN/notifications.json +++ b/public/language/zh_CN/notifications.json @@ -10,14 +10,14 @@ "new_notification": "新通知", "you_have_unread_notifications": "您有未读的通知。", "new_message_from": "来自 %1 的新消息", - "upvoted_your_post_in": "%1 has upvoted your post in %2.", - "moved_your_post": "%1 has moved your post.", - "moved_your_topic": "%1 has moved your topic.", - "favourited_your_post_in": "%1 has favourited your post in %2.", - "user_flagged_post_in": "%1 flagged a post in %2", + "upvoted_your_post_in": "%1%2 点赞了您的帖子。", + "moved_your_post": "%1 移动了您的帖子。", + "moved_your_topic": "%1 移动了您的主题帖。", + "favourited_your_post_in": "%1%2 收藏了您的帖子。", + "user_flagged_post_in": "%1%2 标记了一个帖子", "user_posted_to": "%1 回复了:%2", "user_mentioned_you_in": "%1%2 中提到了您", - "user_started_following_you": "%1 started following you.", + "user_started_following_you": "%1关注了您。", "email-confirmed": "电子邮箱已确认", "email-confirmed-message": "感谢您验证您的电子邮箱。您的帐户现已全面激活。", "email-confirm-error": "出错了.……", diff --git a/public/language/zh_CN/recent.json b/public/language/zh_CN/recent.json index c363d4921c..6b6df56f05 100644 --- a/public/language/zh_CN/recent.json +++ b/public/language/zh_CN/recent.json @@ -4,6 +4,6 @@ "week": "本周", "month": "本月", "year": "本年", - "alltime": "All Time", + "alltime": "有史以来", "no_recent_topics": "无最新主题。" } \ No newline at end of file diff --git a/public/language/zh_CN/search.json b/public/language/zh_CN/search.json index 484acb3626..3d8460e57b 100644 --- a/public/language/zh_CN/search.json +++ b/public/language/zh_CN/search.json @@ -1,4 +1,4 @@ { "results_matching": "共 %1 条结果匹配 \"%2\",(耗时 %3 秒)", - "no-matches": "No posts found" + "no-matches": "没有找到帖子" } \ No newline at end of file diff --git a/public/language/zh_CN/topic.json b/public/language/zh_CN/topic.json index 183cbfcc23..098584ec36 100644 --- a/public/language/zh_CN/topic.json +++ b/public/language/zh_CN/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "此主题将被移动到版块", "fork_topic_instruction": "点击将分割的帖子", "fork_no_pids": "未选中帖子!", - "fork_success": "已成功分割主题!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "在此输入您主题的标题...", "composer.discard": "撤销", "composer.submit": "提交", diff --git a/public/language/zh_CN/user.json b/public/language/zh_CN/user.json index 51d0b25817..a1c9e34de2 100644 --- a/public/language/zh_CN/user.json +++ b/public/language/zh_CN/user.json @@ -4,8 +4,8 @@ "username": "用户名", "email": "电子邮件", "confirm_email": "确认电子邮箱", - "delete_account": "Delete Account", - "delete_account_confirm": "Are you sure you want to delete your account?", + "delete_account": "删除帐号", + "delete_account_confirm": "Are you sure you want to delete your account?
This action is irreversible and you will not be able to recover any of your data

Enter your username to confirm that you wish to destroy this account.", "fullname": "姓名", "website": "网站", "location": "位置", @@ -52,6 +52,7 @@ "digest_daily": "每天", "digest_weekly": "每周", "digest_monthly": "每月", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "此用户还没有粉丝 :(", "follows_no_one": "此用户尚未关注任何人 :(", "has_no_posts": "此用户尚未发布任何帖子。", @@ -64,6 +65,6 @@ "notification_sounds": "收到通知时播放提示音。", "browsing": "浏览设置", "open_links_in_new_tab": "在新标签中打开外部链接?", - "follow_topics_you_reply_to": "Follow topics that you reply to.", - "follow_topics_you_create": "Follow topics you create." + "follow_topics_you_reply_to": "关注您回复的主题。", + "follow_topics_you_create": "关注您创建的主题。" } \ No newline at end of file diff --git a/public/language/zh_TW/email.json b/public/language/zh_TW/email.json index 98e591ab02..fa93bc213e 100644 --- a/public/language/zh_TW/email.json +++ b/public/language/zh_TW/email.json @@ -13,8 +13,11 @@ "digest.latest_topics": "Latest topics from %1", "digest.cta": "Click here to visit %1", "digest.unsub.info": "This digest was sent to you due to your subscription settings.", - "digest.unsub.cta": "Click here to alter those settings", "digest.daily.no_topics": "There have been no active topics in the past day", + "notif.chat.subject": "New chat message received from %1", + "notif.chat.cta": "Click here to continue the conversation", + "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.", "test.text1": "This is a test email to verify that the emailer is set up correctly for your NodeBB.", + "unsub.cta": "Click here to alter those settings", "closing": "Thanks!" } \ No newline at end of file diff --git a/public/language/zh_TW/error.json b/public/language/zh_TW/error.json index d965ca117e..544d11f42e 100644 --- a/public/language/zh_TW/error.json +++ b/public/language/zh_TW/error.json @@ -20,6 +20,7 @@ "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": "類別並不存在", "no-topic": "主題並不存在", "no-post": "文章並不存在", diff --git a/public/language/zh_TW/topic.json b/public/language/zh_TW/topic.json index 696de46b27..bba85af9e6 100644 --- a/public/language/zh_TW/topic.json +++ b/public/language/zh_TW/topic.json @@ -71,7 +71,7 @@ "topic_will_be_moved_to": "這個主題將會被移動到", "fork_topic_instruction": "點擊要作為主題的文章", "fork_no_pids": "尚未選擇文章!", - "fork_success": "成功將文章作為主題!", + "fork_success": "Succesfully forked topic! Click here to go to the forked topic.", "composer.title_placeholder": "輸入標題...", "composer.discard": "放棄", "composer.submit": "發表", diff --git a/public/language/zh_TW/user.json b/public/language/zh_TW/user.json index f73d573c02..d344fd7153 100644 --- a/public/language/zh_TW/user.json +++ b/public/language/zh_TW/user.json @@ -52,6 +52,7 @@ "digest_daily": "每日", "digest_weekly": "每週", "digest_monthly": "每月", + "send_chat_notifications": "Send an email if a new chat message arrives and I am not online", "has_no_follower": "該用戶還沒有被任何人關注。", "follows_no_one": "該用戶還沒有關注過任何人。", "has_no_posts": "尚未有任何貼文.",

#xY)A+DJ_2!ne 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 z%0D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 A&i@%Fun;YVqJb+)&8 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%0ASu*^HQ;6B$Vasgnsc z0M+|5!iQV_pFFzss>Y<%rBXY!rbV*PFI*Opd=}3yazT(+&fNcBgMZ`zK%>i3VU#5sJU$t z(UWlA978ICBN3X!5RsOl@n_F0IkIrsukAMydvQ(?Kn3K9;|Ea7OCO59%s*j+J4-v3 zhA#1Fbg+E_gSZzYSK@hB6K+l=yWLhBs4bpFR-M8DLR+f2<-lcyg35Qawwc}K8ky6# zr!t{=jOw-a;TjmNEOz%SgG0I=o*+Fv_KuY_yWqV=z3(1;q1iZ(M>Ity^F;h zjdSv=M=ryy#}f3VOB@G+Xm_wLAWxT$+RiNw>lo5QR*lp>_;@@tzFSL=Ad(v?`xi?X z@5rRIZ>01qC4MS4DhAf}>$Kh^cakmD#B3ZgjU!B%RFA_e}TYI%gWkzi> z7JATh>J?I;S0+>TVlfUXJ`H{4Cw7l(+@o7iBsVr{+Gy#Yablp;B@(qfYlB_|tMt3H zR@+7G+aBpfk>D;WMRF1Q0F^*$zr$rr7hXyi+wT^MdM5dEWjvPgwfS}J&O2Zg(hWl= z9YfO(&{XpIY|&ULwT4@}nO($e%cLG+gbg&O4|XTi;eDOP>wUH?GsaVKvYB2QJp(Cy zS{(XmBx1c&ZVc~tt7vzWw7D$=W&-Uh>+Oct6(iM8iI%t(As+d%SngY*-`htlo0XI% zHf?R&F}GTwjB_BGHXZ_>eGr#mmf2#JP0g^ih&c-4W@a=RvgzPR!MB5sVPU%6c=q(x z&~6h!wcn@9-c4={PX*awrc_cJ^4?QN9@^tMMTx98ebV}WmE89Y!)x5ubcyYwnqZeS zI!i+^BCXDx@bU-Ay>EM5LFDq8E@5I+Mhn8t<|?wO2f%`S;zMaJ_iDwu>5~AXDA93ta(`x`i9!_u@DGT5ILQ zKB7SBb+^TJFq!Qwt)q$*I;k5ov5jj$G%J1hiB7AxyUz7K)3(8Pe>~QTu?gh=l$P8>_Xjw?&!i+2SR{^1g;0;;BlpLcWO??Srm)(Fjc?&Vp zfC_Y?n$yy_MU-0RBT)bYz>r7XfZ8?HQBa!cCrwAgULaGKvjAxAZ~@8Z&<& zrD;L%&`^vp^4$hCC>VQ9FcL#`ZUqn%&oV!^JO`Gma)SJHA!AwqKZhZJW$x^RP#zqx47|oe#1-dJfHFf9QZwg(GIeOmm|>MhbkrSVa6r?? zSKY(y!Zxq2r#c^Bb`fP6MxhnV@Hh>-D+&_1a0CzEiYJ6*wnm}OC-3{P z1a8#J_u)|TiDWdOue9JQlxt8_tpzw>5fO3+3b=ipHyL)W4tb1*xizRON3oDp*n_>jWUtt;JK7QtghVFppk$MvV_DMH?1mY4s^>5 zGRhX3MLk9kP9uoXx%%J?7(+P|v4bs(Brj}%hT~G{#VhhJ1hZ9YrO|J4wXStc> zwqyp{&Qv{!(jSSatyNl{FI*TP+gO?_sIGTChBv!1NjBRps)x5o(X$5N7FBiPxKUOm zxV^TrFD1D#+a=b!Pm)53A()3@G@lfVwIt}unPJrV1-f}X{^w8x)@hfp|aG(bdW3V!7z1Ok94^mrb{x( z8D)-XoYihF2x3wWf8+GR;3DHGA%2x1+&lpL{gBMqb4_j|bp<7v6w6uP(2SUhQLX99uJ zCm{8FUYI>apf^t*xmSyDzrWlz>rK8c+QV%dDR*P>1F4LJ*V78=o<_SHCGUg7XAC#; zG0azpG~W_5fk4zwtn$P56``8;M!tb8>`<$b41MDxn8E33g8twSzY5a9bT-l~ z&$vss?e_Ok>PYu%MNa2X0z9QORH!j_h1-`=DuUOvEg0q>W0l zpdcS;;C*pFE6MfLJFNFM)RjkKzcbmm3bHdPG6sk$>UL^?cvRH!IIJfzzS+0!Guqop zYvZ!m#w9aIwq9GsU$n&t$)nVLX%D%Xq4O(7bZo6z+?v@!L1&Ec}Nv;?! zS$5Pa>f&gp(*-=L)Ay&jc(yMdSZ`em*j^!!q7c9qXeU(*CZcmeQ|X0(utnqZGTTMC zw9IwLZfGHaXOW{S@;;RK(C0=NJxd~XpA)&YSR%XJuQxuxZo*x5rFCsp4XiG$BZtF^ z^e<%BO|xBG-0c(GOlOZok~}2FHIfAp;vt=eoay%AcpgDs!Q>X#0xNM1oxEkFGd0B? z;5JkvF1D>R%7+FN7XEvNHWoX6z_PW>!Z~EkZ9-E_?cN}yW|>n>PvO;upJNXn@yor( zd$@b8wmVCE2_6WA>6CoSC<~mRqUrQnX_-mQ+N_ zidC5V1}D{1YM*S}cKw+m+Lp@id)>C^)y4F1$sxLrRTH@JS3)shsI@$U4mc+Qy=gw} zO3>Uz{-0|Tg|#F{Tr+gYqmFP7@9*7A~`sA%P+cquP5t0KX#7h!JO2%|E z#1@O(C)>ib&lQXoR|_qQ5fz-$tkTIE6WWObDlsEbV#*StnnMa4UQtdq%d4A1BT2MP z3^G=eLq;Ztq%?UoeYBgND-^ncPOj#X#H$49ARxm{1wP~BMp&N4jzJSXn$xD3 zbaGF=-u5hGgTv%`Zx!C$PK6~|B-2@-l6hFk42qzY1cl|tEKR2&ZEyFRRNFV0mu|n? zBWa;Xj8u{)C1Yv_38|S_noyoR@M{kZwjH(^?ifi{xVEEBZo~=UYLFai&7+g>5-ZCU zA!Tcl*KFIa67EacEY(PPT~!2fEA+HwB45ovhf|8@#|4R;hq-NoX|X$o-yB;tgBDvU ztzt)WBh)jjWUW{dLn~@(X1>IDuSR#PUA){$bp_Ix%&&Ns)3Y!DG6)c!;uGrQ{38mC z5!mh?S$DTVxZd4}AB%;0*km;Ft{PC; zPqN#_%M7a~gQiqd{XFSPxC#hw!>jDYL6Z~a(?x3(emk|#xlcJFE1Ra0(##m^uS3&Q z$&u4VIqXD?9sIR6qG6SofD~Yhmt-M~!$8fZU{{UiXnkXHl-EJ-#>qvwXEUy`K z8XH+ErE6MLR|^Lz$hN-UHt^fV#~SSy+TnDS(%$MjatK+-VvP`FITdYL@W55;YcCS8 zh6whXD5AKwRAjKUrOdi1p;$=GA4+M|%T@=8!I*fZJHF4e@AKZf-p#YaE{Hc97boSf zXmv#-otF-T1=G`B8R3!4)0?}Ou(gqP%ZpeM<7SY_4a_rDIu(MZkg9bJBkUMM3can) z`DJTy6yK(9_8U`26_8tFEz)UiAj=eih%xC}6xKZs7b@V-Z{IIkd(EEe2=4b78K;Qt zVEoJ$riERh0ay^tMq+DT7^qeYw42Ezw-UNb71pLKmwHuSSHOCeSeo;v#BoWf+icn` z<7sVGlKy>6OgAsyoz&{>_j>5H0>5r285uI${A%H)Tbo-=6J8Sgiy8Xem{f|I)MrkD zqtIdc;I7Lvc+SW|yw)*y7Mcvdn8-&ou6%J(87#ZnUh39(?ymzu8)pm?Faj!)jYxvX zufrwF6NN=&Y|*{cw{~{xy~7FZBSmnFA_0@B)~TogpHr6oxL96Kw$Bs*wDU(5vnZ%h zr6^REt7%F#ay(5bhMTZ)W4&BRBiy$eea^r}W}eCz|C@quXdLo&X`nXRNr@9?_`QQH}As(I54qi)FV^?M?fi6L8Ng|8_dW#(_1wcJj z!@?;0ZOeV!WVdL8*;_{`x44LQm5E?Tl&B1L9p=E#I73Q>gs^rb1rzPMh))fJuQ%wVm!k`Uku0Ye|6kjIGU ziphGK#mC zV6u^u0@(vogJXm4|JK3zI zq**(W9@K!YYQ>g^j~pzhHTK1{CI0};{G@kR?0cwWQANlmdTCnHomIn}jET6tlHujI zQAbr%rlTtH{{WYsD;O-bO~!j@0yVqbP?ggeSFU+;&yE!+pJ%;$n?C)*kjzSkc+5^p z*CL1ZQxasJN4-ccq=wO}brOMATImcbLIKS4#Yk^#u|H~U+VNQ7}AczQq*uC&F#S>5XP}=m! zj=iW@hEy6*lgLvny`1n6Dg1)TXEC%Y-Lq9^Ae~1#pf#_*4r($o3)PS-=D~(Z?e)(U zVP!g8Yml^2*GZ&|nS=bb9KptR9zpKgn6`e(fM$_ft23kkGCq|Y4S3<4R_yk-w1!KW zE{nq}l95K4$i!(<IrRw~{HIk{2>78mns*IUi0~aYhqu`)!iG;E|M+ zs4_^Vn#cm0zji3FO*Z2^*G1)!xO4%Facv|zsWjp+j*N3_aWY&KN17rGt*Dxy87&E? zNy7m*IOc{MYk5I4#QobQs3Am^;mmqqNu`&N-Mlcy@GZsE>@=pD=w&nyPuuLlVHs{j zMQpcf13YnrnVbVH2%sS6&ok`6WEXnnmu%iF7V<z?o3o~<2(MVC7DCBk za+kLRqz!8%Y{(*!XnIW!Loc@n!4_|xJ$rL}_YsczMNM%?#bY9s$ev>ardxG0ZM&3L zjMA8Ai?<}85E&DoY4*_NhH+N7Ln>HI^AR#hA+{_OYKe(ulcbf^PFQ~hT;t1aWU$?* zNa(R!vA9hgc~40-8vIDbtL)5U8mI$i+_veXc>JZKzLUDr!+UQWkv4|v?aLZu)NJ@- zrozS7!R`K-KH!%xyxGSzQdZvDd79knIn}$x0bH_P7^$>H(z=D_-#+5fn^__y^IO>) zRl3GjiehEf8Ntk9`xmN><{J&AhS~a^)b_B(WoEaylf5gu02NG-pe)FteiGUHF`a3v zi2Z8Xc6$@FPqdjOwZ7Ktc*HAAp!CG)aZhb{b~|>n^8Wx0+qS*ni5>QJ zXysUf#|VQ>yRUQbp5-a)jkb)nu75toDKD{MR zJY{??d2?SmwGeKL7NY6`y%^Q#;5emgmUtoFNMw~HLXiqUCM>n1cd|ZPb zH6xw@gblIm-!SE@qA}8%K&RYmfXh#WNxDz+n;nJ4)%i78Ez#v>9)SREd`|&_YMuA> zbz497albSXox{lOEH30g#?c^><&c^Ztm;r?JwJ9T#B04N@=x}e^%HOTG}$gK_v0%t zxJZe$7US^9#&%UIY0E!mBDBi6ynna<0IJq=Zh?03xh~Id4A+y{%iRP@n!9lWrRH=M z)DR!tg@No$evo}agUL2sg7a^d#^-)$MTN|wL2gXwBRv&ENDG=VIQ(3xOPsM$z}M62O;gl9?Y!D^*TV(wQ998 z_E(+(>~(jsTEZ>fEyfvRnh`vbEkTGD(4m3qVoCfXECVPvJ-BVsuA8`Tpn7SzwO~_G z6)8s2z^^>89#AFis-KOhIgwx5Fb`zL{?rAlfE-je_tS^lggu!T_CJb2#+g_91_PBa zzq3`*-4yrW8E5A#*bNgYJQx#989cXW)QagNooi5j+%c4Tpr=b`=tg*1EVfNF<%W4= zcItYEzY~yhKpFEQn0Xm%^9oPp$OBWG+1M0iNu7 zf{HinI6X_+HfEF(61njhc%|(c1)Q}CKf6i(>_1v}c((X|jGO61ml2e;QVTn-bgp!+ zHPcob@0WY={{SJej?Oy>;rytUiUw++WyclmlGj`uCB2>EH|41$R4Ju?{7s7`ngI>x zZhHiMywI>YkZ=lgkXg@Z+q037Hw{%Z9)k>;L$)k;X?BK_AkxHo4|XVz=)ohI7}35U zaH*w`{$heUNUjh_Lut}DoB`)oNQ)q=uMz4n0N*hBE89KF@TV*yR%i07D@({ediEr> zG3kyT*qqc8UZ5xku(nv7xAPPuI$y3$QnQ``vwRNHyX&|mem-E9I}qtOGBvV91hGi;BV3FQqQm$wUGOHOE&Sr+bKBfmP5M==k_L|I z=|e)bHE7E&qFAUu4JnED9=HJyoLb#o2{zrr>w7U4`M8w?F(QHjN?k!DROi5RIG=TE zs?}!=p6wK-Ek@!;33XaV0Mn9(j8;abL6rM(VwOR3eA|Wg+Yq|7mf1`;*ApUuH2e|j zDiz!hgw%pQ+#s+1R{W1;Xs~PVDJi*0)RV?ZH3qHMs-bC5aKfS+Z82|?+IKAMmVLQp zkU<2T$N&q9 zl&pd`KO>K9xKq2azLe5r)!O-p^j5TS(rBkD4MgCyc_!WdqRBqsux(2m_VgXgmxLKr z7=!TuxdL`{)@lE ze`_t|c2|=`jRmCJag`=eK%9m=ElUy@WrPWGl zApZdNO49(@?W=#a+^hxk6Er(?Oy*^l+{Ug)#B|IAoaw1St{zfWkxRG;1=LaewXM*2 zW`S-&P={YqmWh~CE^A&R3e$ltuRqOR+wF^O>@wnYv#?h=%Pi=USPux>bQYR*a@?`?K)Mtbt zd)R!9)D}BsoIRr+sW+>~QdlSmpD?s6(h`An4MUz-Bsp1{-+D-3{{SgA@f+&b98(C| zHGY;=?vxV7Db>@`GZ=K!UvCiXwsGyTK`p0j1X#BFcUa+$Md?u^Md?}^XU(xRO3SwI z7mFy1a=D1x%1Y03a}?4XjvXl$~o=?o|az<`mQRVPFT??IE_7T{9lt)Sc66 zKvWLHt%ggB~9U-+9ih032*mg*%J2U7S`(CHkw+{28b!B(p2?5M^+oW{b0SvUMo2W8QC$=VmmYXuB1M8rj~%+T7S>aV zCID({R&~mi$f*>r5^+F9Wjyi3*4MHTwj;7z##*l-1SpbT;6CR@60w>BGT zxU<`?r1E&fn=52VOkg{R`;Akf^n>{R&KOpl(Ba#!F~_veKv;;X_ZQ4BD$TtlEM zyz&JiEkW7aSHVonBJ<^n!AiJ8yY05NuX7AnyTjTAWqVi^!;wO(($2(>=B6E>M3HX$ z?#X{)yjrb?&bN9QmgO4Z6$;4^VF6?nvSoF2&V-t;Jclz^mFdJ?2%jAzM*Y( zENGW;1Kb@ke@9HFtI}9d(DTBlntul8;ujZIwtqa5+}E`g>#H41>#5_8YmIJoY0QyM z7$r_BIkvZ5+w~i5&f)fjg?90?+rsiRQfi~fbu$!DKNU`A4B6aPJ5bwJxFFmfW|DST z&Af9$Du_NN28q(y(zU~Yp|;rVp_b;(++9g$q2+|h+oUdZvn0i2s2_w-{g`RVhRJKb zPKfunFDxc6@>bF!Lo6ZlCg4W>xd;@`Dtj?WI7@j;MgDC(G;58M@WE+6@ z;!X#@ytEc~4JP7JIO>!9qnEf6a$3i$w_LNxdvIXtFP)wf4bIPR9mIe$OqV8-l~fdw z8UFw_PGGS8xF~{cH<)fVne<96AQC)q+}wvM@*$yjrnwa;_%_DWq`h%Uft}ZD6pNnJ!}6)y2zAnKDT_Hl$E; z{?Av4e72u%x4ZcpjjHkp8q^(sGj8s)FUG_&2v`1{97_1oJ;EddE`tj2c)bo^R);wq8&zU{wmLf?4Zw!4eF=4SbFrXg~RAX;hE!?hb} z)Wc67ZV70z3w_7STXdS;V0*~-XylI8cwj}A#UrMKp5i9$=`3qX`)TO%LwtX1-eZD9 z@*Cy6+^0ndvIL4Wlml21LrEb}PHl>WZ{oXE&cqth#tA#K2+Ypz^Vz5_OQcj)kT753 zKWA1**ndSnZP9-P~Qoww6}+3Wo1-iB?vggW*!=;0K0Sn?!+D$`-$t zakNQpu{ddN)H#;n!J;&J3HW%eKHMm0?+) z?ORWoTFtE>u!>@!PdyZZt6dQS6?zuA)530LhIAjR$)=Xg9c9wKI^pD+nv(kb#2490o)j@nuLIXA#tdXrA2rgD@TPR{U^Ii zxXimw<83s|TJGLU#FpKR&qq?12n{kEY8Yi&;YfbVRBLm#MQd}oJ-y_1;bMUn7-x87 zVyPsd>RVKfDUjjmi%l?XqU&)Mf3*Y_q*7BrkDphM$oOg@mnYNkjOL0zty{5|iKm0H;J3 zee0IA+wDIt>gsse;!+4rG0~2Nsiu>}`!Nd2eT%|2&7opc`K{C>fX6+_M?f7;f)E2x zqn{iQWMunJ!xMJMj^1^0dkC74vl@dU$D^!~N&`$*NYd6Tcq?gXNuHuv(ZY=cnpKr} zA4=zdi|@Bxq!ottWP)jdj$;EBk`|L7d+X2$8PoePz#HAN!*a5<+cZmjkhkVU^C@`( zu9s(#s2nJv%v1JZQ!$TbwQDH;ZGKu9ky=}V z4D@is28?H)T9RweA(jlD1;M$)@~X=H_O7m%pcLV#nq`NC*kNmU(=2i6b!O|-qf+|P zr!4*Wn*-8vPv$kPF!GY?ji$*~sWW$+glQ4LZ6xLkXF%NXP&2k{-yu1Q(mv|do=GHP^e^!R zW~%~yFs(BQ8CEg=X`)1WyBaxq<)jmr-NO4TWks*7GOKGd@KOeU4~x`Dh3>Y;>24)0{pTMmy24o=b=WEMk6j}xK`w&Yv@(h zHkEsUBn=S!122j56$1noy>)8^{i8u5f0lgc7^glumXyFnmp(5HaL4ist>UL_PTGY* zu66z_RH40&&wi9!iB%CgyHSeQ*vx1?>>k4hCMcnWPfT&d2~}K{n1d|e?I*joX0$|k znE^%WyZC?=eRa>)Cz;lvw+HuoVy5U`-7as<|# zTMbwd`4epB-fb$N=q9uTju>JTTqJSEfx?2_Ht}Vo=4!53+IXGW6VU;~;rZO&w)P>*#mh`t#f8;K=HC}RZ1M-Ty}eYj;}+hZJTh_b3W z&0S3S5s(B_aL91Nq}gv_w%^6Gs8%s|b;p!xs*0*q55`>|KZ zC4Gl&lWU24LM4;}z*VVJTB&VRIdB-cMOAm-8u7j7W{T|XqFcKN*&f4`y8 zna`dTnI{VJ4-xWj)oyoh97BD!GpK77G@czmbgMlzg*h7V;f$_}n-JYcKX!OGown-P zt%(yyEDS<0<5Ho82fq`AdojtJvC*Uo9Pz#I=hu=SB(j2gJ-c<1 zX-qcrUMgEcweDI^bS8wkW6(cVeM+E|Bg}*HenuRSEr=spSS2t9iCwv)N4FEjl;K-V`yJVsKIET!^V4 z)1Dm#h>rbnM9!&2EP$FGRXC9=a!@f@RIJQE&Vj0U3LjiN4`{XcU(zo;^Eqx8WZN6% z?bI3WuMf*WE5TMr9Yp^CC_daf5jIq}?T>QWcT1hB`V$THl%^@+2UQt;2;!%RZUkau zQw^`i@9p3>mnaq~z*JGx#-vh|<5Fo%I}vtTwylcy=M!hNvbas*pG(-7pS;o$T|KI6 zs9r>SaO6C}H#5D3{I)mBV!F3tmlo~{JZudLuwj;XoUT-`*j#QeI&HRdTu%f|aWqjW zk(MMNGnF5N76T6n+j#9CK|Bl2ynD#6H+|P;`7N^k!?cEZV;3RS#Db6wPNAvPt)~^3 z$87CglF&pyY3g8KFvMXjrY&VHM@M=kt0@% zDnvD?4NwVROzVZNr@g~B{{Zc;>TS1;ZF}4sd*4ZZh3>Y*jK_6m0LV&`6s>=k1x(v2 zOuiT8cH2Cgz1G2Z4%Rfr`-HGOaDvUG5X=-*kxUnZmnAVRxRn;|UE&Q#?2)U1&1;rN z0E|s>IadDwHtd9jrlPE9IGp)lF$=uMZ?~j&-Q?VR=1Yr_DDAvDKveAkN`|Q<;K)H~ zzHSz74Yc6^ZDa`0s~XmhDbz3lpXy8bV3st3(G|rdRJVyshV`f?E>t*S414UKE|$+_ zXCx7UMR-P{L8)UR>5!ApJRp^~)+9*Qwusd|qAixHzrr)pN4yh&Fn6~Bgm!jHoU3l7 zk$I&UnvQij;0R~kcL~5(bWm1|(MFM$9@49s96i`a0Cu4@Ry1RnVaxnL^7h~)GA4$l zLvyG#AAS}Aordc1!XcBb2f`2R0N^oFTwrem zQ0fQ7rn%wDSU{GWwT!*jwk!eWG9P9f+Z3#>k>j3m;4QI5w{Mnuw+LFc_cw5Y7N>@^ z?X(cobQ>zdM*@_DXkMDMpX*TyU%PNqvMXRYt zJTSMhwYrC@g;-}#TrrT*2;yxKfGO#ONuiZe>?3LdPISt+0HD&qSTlD}nyBDL36)30C5~#u#hz-^-S&E-z9?xV?>wcB9ZmQ50y2$1ON1 z%J+?~?k^hBZORL%?AuGr5Yr^F71bAaTIEc*YN5o+X4WlwE??#L>twT5X!i@NiIB89 zhLRS6n?Hz?&)JGj5`LLr*HgS!lHH0h{q=i3Sm=C1b0@SIF}L&%h;i7n|{PWEM3~YsI^S&^#kH7gEVBm z%W}Vh(l~dE7dMR|4RLG^grEj9)2SaxJwWG78su6E)>%yLcN8lPXVVMGoNd=zp<7hlcNa3-j@8U=b*Pa|6^j5> zO97sB`>^2J8#cvhWG?qjuGMZ%?I1Gseo7FcGU7S~YVmya95ibhOt*3F7W3Nty~EqY zEjJlrmPGBKB&sE}goGnk#6i?D!Z?as)rRG*uOVpGO;Oo{q}s7iSW-t&V|U@1%hL)S z!Avr2GOJqJZI;tq+-peWt2v@U`N(4`9P6-aVerYwlQVo1``yzzWj?SBcP8 zkx0Zi2Cc`RrVmjl#*coyv_ZMqoeo0FF5PmBfeO*2ctWU>tO25$n&6PKBJS!tNNug= znbIjgCKNjUVsdioKp3dy>Fvc}WNp&C8*q6p?qEbU(P-q#$;cg5HEs?2@bZ;*Xtwo+ z7lP4ykclLX;*sHGFHh=9>>M)zLU4{lD7;&7okYJl!&aefB*m@~mrv!R$fa0{=fKz3 z30XrYh;J*lUdMa7+-^3vL~7f%sN=K+LRM9*)GRm(@)_bR$jOb2dw$&&q;@K8t)tQu zEUi7nWt4!zD9iKa#OKQuA?(G*>$TckCAR0hp80ZVBgpaw0@#i_mh~U1%WoSbT1KQu-chJkvjo=>YW185-+cFJ+ij!XL)bcZqeqrX6!7G6o!O*^o6K?V zI}X)3-tVk3SZ-R-nWLT600LmlIvkI}LC-u=YLd6}F83|Oi`}zGyLK_7FpIi6UCK3T ztxgz>u6Su=x8FZ24J{KAwdHaPWq=O?>hAX9$}O(u341{fgw$Rp zHF_h4);hSZT7K*aw+%c4%J!cu*q;8uS)jF_VpG@%JsN}!cY$jOstQ&2zEYYo~nr9O^p<@XWZ%1QjuG>p}$n=NXsuAq<&aXw2p4YZFWy@9_`lx^1x{mH~C&>&Hgqe-P& zMjSKG4r(sPn|0Rx4Z)5ZgFTFLckd#OGp&IX1zNEIpAgkG`|t<1Ew=LKaFTm{s#z~* zSl&+TnxX9qsI1K5FzHOfXHQ%Q6^+Nse7A1gBimPRxJbsK6gJd&O*pH{6r_mADh{e1 z9?WO8xm3IjwXoiNrs_MmVH+)_yhc$qu|-26Mo!f6qW9w~TG48!6^y236L{|N1Ti&* z^w;+{3k%*_q-w(GN0T~TCuw0pt0;(EiRXoguV8*valXYgyN$)S>Fi@jw@Z6@BR2N~ zTKv3@@wA#sXd=9H<;MjX4x3`%?ULLyhQ!`{)D|%!ypvu|iBytjl8YKM=@kfBy_lRG z*#7{J>+BHP?MO4>wnB&nuSzXA;){@fTjY+Gz#*{m$C-p2U6m1UkrlxjN0g%Xeg zMWol@u3*y)U6oyvYMm~H?Y^t%rjzqKjAUa%S5mfmjVnXPkr*JNcH4X1>vVhF)@xz1 z?Xoqt+hr2Z93}gQOV1U=X{udZ7;?yZ;^anG5h^9h*er#mBe?4vC6$+f?lGuQUS+fP z;H89jlI>Am+RJ->_VY>_7_H)-V68DBT zx82u$n{3*zEd-Z4Er2pjcO)#zNO%0Zbtq$64OPz}Tr7)lx$N?7!rgnDZM;^mWMR5y zzLBIb!&cH^h|!z?32~UG9I(q7X6tY9y{cJdirOn1i)pmG9|>16SNRD6!rHC>DAJuQms$I1|C!DkI1)8 zlGkjDacf4o)>c4~>PAI57n4R{1IOEik?Nk)ci8tGq3^9^iP1|$WK^My9xJJOhF^#r z0>VX%wu`O8XkoWw+fLFf!dTdJ4Q+vs9i-YFso)yN48f@#kx90sIbc$?eqFdH4~vGXnrD{W$KWdm1q zvr1*qa~Yr6i8*Pd#?80x5=yf?S1u84?wBbhooG(5glJ;K@H8K{3lQ!>T==hvS-~xZ zv@L44EgDIxStKmzYLTgxq(xJt>jQ^8JVBbUSirwB*L#JnyUZvece-h9V@iA)YoHJ^ ztqv*`EVlAL9PQoSCC$=XNh90I8rlbnB8(2Cnl#g-Qk5jv--b;rcds3^ks;fbc+LEc zG@FFP%Ma&%1(XH|ymBK1hLQ(;uJU*Q5bd|hSLSXfd18`62XI9czthNk288h#N90e5 zNw>+mm$z1yK&B~FXAY)vDuk2LQjBx=VzP~v%Zn>H2VtT^6A-|okliMu;XE;M38WB4 zGhIu=Na3F>un-B((`?b)-A1;>Tk_dSEaVDPN$5R3yg6cQRzdGcwp~RP^pA1!amHTa zdwCrZBabogABmcQiR3VjF|=N`@n|k$ND|Aq6#+V=Z3H-xqy~bSH8_6k0?m#TwcjVGO%^++sHB+V+yqmTSLvu)`YZ znJ8$D#pr$bR?!qsDD#U+Jfv-1xuk*ZyOG&kp3q5)7@}^F8AG*3nwpX6f?idFQ@*{k zNc(ySt)Ut;7FSknKsz;cSM2v zwOKZsi068Zacb?RmpL(IttdYHBMt@4wVbL_*6L+V7YbQWD-lzwMh<8}{u}}%Xy%^Q zDC7LOBTZ9VTM!9J7foVT(6rQl77U0s!)dmJ_d=4vN*8w5sCtq|?OZEOI$VboMPi@; z6+odribwb00B$a&H{HLPR*Enrcw<_VtECq|;y56tL280qvWcW{uS)&AFoRc|M&OAx z>aLYJ0Hc`pdvE~p?{Q5dBm=$y3)B2ZGBf0(o*oGdavjyyjADgavn2xu3QY&{;h39? zs|Xvi&(zr#1J@u4!2u5aNuqR&GwBpM0V9Vxd$CwDb`I0S5s-Gng#~L+%m!ovJ$d0_ zLT7cXsU~RwAuH-KB;g!Z?L@%N*E5-AmQx`dG-uEPo&YTcFyYe|k<3x5F=*qcsivY> zWm;mA(dT%f17aJTF-!Ae; zZ2tfdYA#hEfOyipFkq?7w!fv3`xRO31l~4^n%~ZikQb@PeS$|2A8Ka&g2(xMY zmO0l;ar?l;s5}=vx!EFJGT6J!E5((HnK&OqmMRrdcbI&V>TTSqHujeiNP<;X(Hh80 zbo?Na`R0DiU#mMxrj90==au8O`8#l4X%@EfI0B`Rl{NNo#9dW3FWJ7H?Kj(`5!`s) zo%>(IB=&cY0aSG$lF~6Mpf3TDue9LwFJU|X0MZSve+!#$k7=}uYc!-2+O5BNpH{YJ zm8k2(PcOR*ZAxBT&vE)sf8)DW>A1+ZZDwKYt=OdYt56z(RT^51DO`X#VPgu;SFfa3 z+il;BO|xFX^J8|3IU$LO8s>qDnCtN7ok!hDamD$FoKd^eZLr;6TxD~%+tOM@)Q9Gg z3*4lQLqc9eL<5Pa##=Vkz<0@7ZN=JF2rW85{X0)`Qda`S)luKDI zQag#IRv`oBse;hyuR7tRUG0_Syh-0?Dvu;VSk$Ydb!i@lkGBji-%hp-{{YLRyyOtf)P6(=^zNuFxIA=+xxM4z%OpPl)rB6gLXO==7zmIiRVlfCnO_q6mLOKE%+nDj6_A(P75?F3ldOvrxj0!h46DqH##!*g_7b+Y@#`J7(seg7 zxxW;hLk?txKNcH>cer~ttZ<&g3deJ zOO~TqO2DJWr&n4A8fi>FT&{4VZXfOc0O?NawcFZ_rsH9FyNw*yl94laA5rdiM20{( zC~gBGg>_8Jg?&W&HD}>llp^xw=h|7)ZIg7{k!gQGoz^NtcLXAwgWlR}A zRZc?c)YeD@(w@UiDN44CmSIz<9KY;wMDsulx-%8wfG2_()>&;C@e|{DZC$>IzWMzip+qlg|6abQa1`kZ1 zw1anx-M$rQuePb9o}bf_B8I%PKiP$JvYgvn4St&KjNUi8T&l7?@OXZGP6WV%!&8Y6Qj z0AaTn)wH>-cpg|mDcq4`Ax^BgVc-J!`1|_x9_49D<@aHcWZUl3Yhxf}VHzRS3`&Sp zu?~w(Jz3ZL@s@EL`2n_#rps-DG+3jtwx@1*+%u{WbeUCve}~i>VNHjrZr`_9&$^xG zYiSHuvi|_;v=mh#KvdGF@fG;#mIF0DKQXU2iv5;Z^A%f(M>CP=HnAE>}jc#jhnExLBu^ zi)XueHp!*7X`>T@P=tn1R2m~`QcDyB0#xFmZ405>Rx731Z=kr|Z0AvR1kVHu6mqB~ zfQ~v-QQ}V@zY7O1057~wed}?y-R~xoX-@e60NW;&t0O{nQZQ)Lx%+&*IDT-?iU{jy(AMRMyRo}Ydn z!Anrx?;Ay}ugk}`#~td1Np3Do(L^U;OF$fj)z3AinpX?pXDOoJHo@V^`Xmr8(<%Qd4wBvO|0>XJON3Xry^Mip&upQav0V+p+2 z-zvo&z3dRmp{^PTT_uqmbab<+kA(>}I3+u&gX|L9DT+C}vCSei&DHCfH0kMB(kERi zp?UH4;iDD3o5dWmTE!1%NYL{h(wPW4b@t;mR%PlLW;x;D+U?i38-?W73}X*qMH{m8 zk~Sm_6HB6nY1Y4X98IO(Nxk0Kg)1Q{^G6Yy7mD1)7|GxB8cj$NwKN!XMlAf5g!eCR zZ5wQ{zsuRYO$$wM%ujKfFv^E5BA&QeJS6V!d!5rf5XWZ#>wCGEQc{6HAR6~aA_YBg zP-}ENa?)r&QWkF;3VhYTdAor@t1M(tHldvsp8O*fdAmt{x2zD|M`mg47hjb#Nc0c@v>shQaiNEG{Uj||Io8r~};k=wob zGFzjM^9XC!HM=QT$jw0_m{~a!9g4)t)7#&Pt|3~*6eS~NQZ;C42$E8a*_`kf$y#ok zo!!UF-A``v2-;y~9olhPz4d(v@$PdSjf&f zDiuqiYAdM)c#c>yFs@teo+y)CTgM&6#hglGhI^ZWB#H@uF_`oP)<&G2$E|T0ijskY zdboFoY}pb=+wJtMF{pVZxb2GS&29Qb2N3e!Y`Zh~vK-)`0oplP;@ ztg{taLTYUi$DoN65t|xU)ZtQ)F5BX^Ha1dT?Yo0PwYyb!MYw0Byj4BWvK6ff%&ls8 z^TM=L)}B@23p-lcZnu~BC5&=k#?RkFBWWodYN`;LY669DN}ah=d?RhzzMEfe`)`p? z6uv#WT_f%L&wM0(*tpfDz;R4yS6Hp#l%CIg4O4E%q!gg5h^P_Vy&D-sNVI+fL1_003`=8kB7{%R2f8D|?&E zy{6G`w>U0rC7lYTk`xiZr(@ zX{q9qx>*?U&1iYyWaCY;4%=;U3j@uvw#~^}1HwqQ@94DNVmO4ru` z6N@eTaJZ6dd+S|~c6xyvQcHIeH2{gOP>9|lxsKu!!#uF?c{Pb_ra`mrcQ)Jh_XDfL zwMiWGkA|%eJbLI`gM1`lD@nYD_jKGLhAo#}wWW)&nj3SXu5xiQAVLKWSyKm+7Y)tb zmdiYb*3{dI3(J|Bc-AP`_0|{%<~wqsqVYJX3e~G^yxHc0-fKAN0#oE2R!+xCe^M}X z2GYL6#Aa~QgA|h3mqZ1GU(}#IOa(xx|^xvPLj zX;FYidH`S3*AtVCEw_!f*)45a)=Ow3D$`2yESClAK%nWV6yw6USy!s7Wocc_l?Tm1XK(~wH54#e!uOl4!>m#6x7LOG2vbar1i@;luTy9|HDJaL zQfsZReZSrB&9>3IRws8)ij?8QR0cDvoS{?sn7ZnND`Tf;LfM85(FJi*GCXIc`J9tJ~iI~LQlZ7pnI zSPjc8aCV%C;{i!ET|-Sk%=+`h?L_jTc%_c@Eymop$Yt7KNhFn|dR1h01yz9!LI)lr zh{R#0)c*j?*N3hQ!osI> zKaFjWZae&P$kXa@;Y&wktb_uq)1(&XQ^z4p89X)GJgarwWJ^ucWkqSa(WbXy0%>h= zGls~}4@#~kRbc0C-kJ@@1>GJgTIm=f+NmuX*Nqia5tR;A0P)3TKBkcFw&`s>^~_Cg z6k4kmPT?1YSxo__D&qZ->H_P@uI^xhe;>D5?Ppy=@^(c@8$Ouz8o3nwBMMW&e&OUF zH86{D+ukdCaiq^7=#pok?Zcq6Fr`a$k}2zjb{?T^_uH`@wUT_js?5PHqLDu!L90kL zJta*^BTY}g3o63TdAHp~du(i;7{gTG%OL$z%hc8)y4n63)MUT221v_gvW_?Z;~Hrq z<_H6kQB%(qYHdD?$o9*Ni7c$lbC?Y$bO0!E#3-h8=Y=9{1-)xYzBX#Od*TyIu;<<8w3?>lsEwzn!7gk95GX)Q?~(V242n43=_ zpXv98&E0$Lme9*I%PfKsBxJm2QnZCwY9Y9KaKaO0_gfE$+uJY}DyV7G+?h!{fFbMm zVx*$f7W-D+wY;}B*2{2=6en;>(}j|QM{%1#6{)GAzztUWZL|**lL=y!)$PF7q>wdh zVO>M+#D1>5*hDQ>FFpHhRT1g}djb?_CsUp3)ekxXk;RGAfZti1-*3rK`LQN`_RX{m0sG@=C zf*O6I+RJWsw}@5TmX=;@Sl6S`Mj0W$-7cb%Na6~SI~@c8nBYmnkQYZYo2Xtz5@}$} z8-`xE4P;4UVXP{~L8zu#oB>XrKxMls6g#_>Dk)7Sqwm0=(zMqbgt2NG=2h0M~nxNKm-rQrw#;h!tSj`149J}IGtINeS;Jpx1_t22+=f}4zL!z6gBDt z)ZxU{lJji&sQ_y-)sIn`Bwc#z!DxLwaAXwxw9!T_-HI6L-T($>UR9|0hckd>VfhH8 zg(P4QK%bPPX2kH-UuF==SCFJ8-p)h_h`_XqlAmooPb?)uc-r#bD|L!VV_4>CCAZ46 zMBwzX$h6i@sZJ@ld zXp|Ot0!YilNm9B={%la7K3?5szmD$qM7Cy)rL*awF@VLZOGUT5 z0AaYfeS>&GXeBpRwhwN{<*o?II3xwNE_AC?NcF_ZYFE_j&nDa8k80m-meAZtZVEwd z^6<*&pc!SCQ;DUfKn|6uJa}h(x1JnRah3*}S$bVwqw_Nv{{RUT6$b$lG`A4O;ayB~ zWEAFEY6%qkFcQ+9Q*Ctbce}?EZUwuI8A`(@K|nP^Ohbn`KvX)0!x=9Vpfa-m0bovfo zvksO-+sPCbLU~)_0hybLuM9;v&&~vQGZj?G#sRAlPJWmspqldergqk?TJ&erOldVB z@WE5Al*IwxF(R!2px{mdL}x2n632-o=bi&}#NAILmiZn%PBkrl5ze{cdV-zm+T!-(Q6H1QBOIs)EInoprL?~`;SiD903xk5 z1@yzPfL+?(E#ux>kt4{$h)1U%b{tY`t*YyAG0a_U-G-3b`jj^lm43`3b5E(?OSeBP zvW_cd?VYCKnhTIbvdpC`EhBeK+bU;_HrJfS^K8e>+qI_SwQlXT-q}kH!nG0^VQ5RK zAP3R`%BM4pI_I^+9@~yxv&R0C_|>+{^7Fy-`;Gdrn(+*a40^>1hdhQlch*iAbmrWE zvib|Q23Avj*r`^Cl+w%(;czQK?ZoLMR{5sW{V4H^d)Ot02DXaKD!rK0%Q;-jNX&Vk zOf7JGYe_u!=&t4EcgK3zCbYDNBMDdc*HFKh{7|!sl+NRG@D^yU{rvxh6-C3T4jwpsn6oms&RAt0gm;)Wqv6|Pr zOu5t^H~<$Uws=$_s!7Jn)YtpQR11 z=e4-T2h1*Uf(s(I4p|%$@>Kr-$Gk&po6L4gcrJUE*Ags~DW^gy2R5%fYtuea-OR(i z?{>R>;VT)VS)m4RHm6Rf(<~)5{3r8q@E)L2?ptVX9`I)jOv_0s8dWjQl;28sN`p932A0>X{gab;Y#5i zPrp6b9@9vzo}t4C(Og(uOw1z`BQOqMb{0ko;@o3`_qA~A8&oJpY8vq2&lRmIvwXe3 zYgSw3E|w{ zH)#?$rVA)6e~DE=D-i1=6{NAE24*}~hKq%h!!qt0jN5ZtSYFm!i1ZbpR-&3Lx(f+eO5{-U&j6~m z*VFyjNp*Pz`0hy#rniBry6OP#^=fWBDN3C2H&HfPc6ajIU8Xxpq3)z*jx#%G6$!0!29(a2 zA$q~vZ-H6u&388Cb8~-i%=5wBl2|R!b0RgN9)P>HSgEKRXSBk%O(V^wTd3AmweHGQ z(twxOJp(9j;Kf3_SFU$mrqgnU(%^RPE?FY8lHasmMABJ<=dA*_;y->GX2V)!`Ent7 zEllj==PJ@j0*<~q)qMu6upS8@wA=S7Qp0bs7rliftf5NDQ(C{}l^TwD5r7_8_;X0@ zcfLsX5*FyRfteB<{uhwu)Eoss_u*jjXL4em?QFK|7|TVeZg0XYv0FG%q{xMUb|8ul zUd&B4kFl-9_S5dR+ivH0BQdCs28&H9e=LS7RH^(!EHvbY$b8Giwzpdy#>zXW-3tqL zXF(kXojMz-da_!3!Nl7a2rV~_+U7{_Y;Nu?cKd?nC~ib;Bu|hj+M=wejYCxxBaS1L zSZQ~@osvrvE#Ta(oKFq=s<4HdN}WzZRvreF$kvrOWs<#{aq-K|tWPAu#V450Zh>`9 zW2Hlh3x-0=k;@Awgb%n$w?Vtz7MAk#Hi)Isq9|$sjmK{+qoqmy+)hnhF>VZ(NhGf& zgx#iC&s1w7>I~cmQ<4q~21i=>mG1PCUBL2N!*2nFu2ZcXYh$I+TU8fZRf6#MV494r z-Y2kI?KV+MVYnIh3!u?G%BrLaiV4xGy}*t@1cP5@E7m63qR-?vx0hEl-U$#{Ge*j^ zk(Clc7%K`?jL2ih5n}bS#re0HuPkh0*!L!q;bI!2-5A*;QlOI1>Wy19(hf)XtBOsC z?V#JCXWV?_ahc^nz1^8uHH^lmx285$l4%!-&y5Xm;&MB8@hzBLcaq*4LseC`zmjR~ z?a(e?RfgwvwTdXFAU1_XQC89xl+-PuL{p|>|T3e2-S5uW6ljTSd@?b|-{QSgII4o|JRb<^a0!PeV#~FqQ!4(xO;5LpuBA%y~9!3nJ z-gap&n9p+@?*xd3S)|eog$pV}q>ka$l?v&@_8zJqm-*L{O)a}@R;A~JITjZB*s~)I zFDofsG#`bsu2|0PlfzxR&iu*t)ZDk-yj;Zy0yrmG8b13t2*thvYr{$DJa9~$z#IPn zFx+fzhVMC=($?h0BZ7L7Bt>aGvjr^8ps_Uc=Y?fH5Pzt*-yyPd;a1zNj4{q2y|s)? z&`630<=Yw52%LrlW-`kv;4H=8Xp3@!QEO-N&3gvFoSG|vBuybYlt~<#bvfg#4~nBa z5}j1{E!CHInfEy&xU@%}+Uhd;3dK0ku`(%9Ps5~Vg2Kw>W4HK4{jIbuuxb(@yVEgI z97@bVd8cM()XKlp2~fFk&kj*yVX}C2*5a*iVy(E@qMF-FDnzPCk|6Ut1d)jZqK-c7 z7YXIhHlM0CJ5SGUk?wg}c&7LoUD&AY}5pZ<*^Ps=hIaABXn3)tjI zZyIip+io_AHT}K3Z!91QZRU99N(POiuXRf?D;qUb^$r-JoCveq?JuK)wQ}%YQ??A& z%CZFvYL^Bg7gGNK5}>aZ0}VN%Hy!fxXbocx)OW8$q^Mdn1T|zbl=0s~{L?xZ#FEdc)scEhApTvEblWPs_qRk9(tG%R(WQy_>?!+B9tGb%2 z7SAzEPDTkgOHUMmWZdSw{VI02VI{|Lr&XS6Ym90y7%r)npNEjbFgKnP<0f|8ca82_ zOIB7Eb~2zz;>xWf=qw&##X~IzFmRR1O_uw@tZm*cqS{U0aF@4q(A|I}1x-=^05?{V z@U!&|M}XyrD8(~fjW-RMY8uyhpLpF9Zr%KF+*zg5%Pr-*K@66+ zP=L#Hs=u1+Fe;|Hg?QmAfwu7*+e`biw_VyliBEFO*H==8xP}=uJn-1B)h=V-|zEz&_0tW;@bw?qW=hpPq^BY`+6(Dufyys)~#$PZ4B!Zd&?w+ai|!!U$GIy|=ne4LPrNIAJ99 z8f2X(GoE;+Xf{79lKF0=mexpidodh0GmUbGl3}a03{;Uzq3L~1MKv6-qN{7|!sBmQ zX7TNvt!9Y~l9-@|c96(4g;PZhD+LRo4ytm&u_y5j{%z*)9mnQ2_OObZrJ9Lfw>Z_P zw7-T$MJi*@Pa+N!RsR4(joQ{BXYy+`+U@a37AY0hH<&pMr9-NzLQaqxO-DQ!K|P0$ zz^kKsHo#gs$cp-PMEbkYs+y8bR-jh7aKLf<-1L5_U^6@)_mqG^Iuzkg^uTXoGCCx7#Cyp@z@$<4dvKo3_NYb^ag= z5D)Ldw}nF8!sBnao?Ban?%rB;!C?}UbKeTgpq8SB8FtEp)Nu_ar9nlm*t>Q0vu-op zg9)&!2v!$8FDABDn5h9IWgt}a*A){@_uD4CwX}5;OArD%*2wmdNL_+N*Hxb38yO?HG77e+QmvslHh6d}tXnbL?^Ck`mXpD6rCC%+r&dCd#wyA` z5YwmIhKe_CHhUZsC7Z;u#>cuPWoA;uv8fuH{tD%S!O0(&Zo6&n*f-m_7)4}~h|S9B z*HKXYx`t&^y*|^HCaMIF%&!HcTZDz};h#))?z9F-6+sNnI*T!5{g_!gVFj)I(pkx1 ze@Tg?cDU~|8;N^V2*`j{)E*^>ufG)%d1JObRhrf0ZmLiDiV>MceWffrVX43mTs(l0 z-d#r0+eK#<*Q!IJOX95@$3ZONmsDi0@Z@QPRWvtuaat1g-!-RZ{08m+TDpc(Uz#hg7S9CmwwWWhf*W|mP@nRaimMWb%$Cchlr_kEaJYc#GUh!cdWa#) zaMi=4oI!@Uy0@|m6k$}<>Q$ftb1cMu{5b-$cdMB%uHB;uiyKF1M^P$hDhJ!c7bXiP zyH&0DypryC%BscNfekfj1d+@5e|{CFSHH(`qvfs{%XN0Ua#VKfRsR5s*0>-z+BbyU zt)q;wS%L+0In;qdYtFoIV*<8YXtwF4mFDhMDw>zz_3Ejv7C>abH;`+$079%*v<9c0 zF;KD|8Q)JgVLKsjK5whGI3k)wcKuSTfgD_pR_rqvrmy3aEZRn=BC z2d6yRyfdyGO<4Q(){?_En9xWxQ9uVi8T;_5kZ+d^+u}t8Ch2{WeROi%eKeGqlbWP!x#2!x zB16`5&9XJ(aTY03@^21{$n5S8;|v!z4uy@a!j=x>;bkDHN`DYF!Gp`^Uo8IsYrjzK zZEkM%+4kFuA>5V=514npq*6d3Hzbn2?ucfVw-4T_B9Bik3uMZ->@9 z46xfrw|LghjcvAV*6Rc>PLUJ~Mw!ZuA)AhTNy4>y%t5>NlHOY|u!b`xg$*3Qj;@_u zd^EAbii)R>c;5NH?ss?FqpshzMEXj`NtRhoWGzOOKn`a!TvoG^+i0|YgKf7s`3Y6y z8JMIsBZW?`d@-(3Y2+44ku`@Pg)kC$t_vX1$JY!z(mf4HCy~G&jIk9wP5|>4GyvyX0f04Y zW?*$OAH__mfEn1^N>OxzLhuKN+HkFq-uBQb1YKrlWIvKRaTf0r$mgwx+%p* z9GsQ8PYt!g0~MsomQ^TX3J!(?I#8&{@}@5GHJE8>J@uZ5WOb4hBu0z^vCoMko(u^O zgjRP6`LWP2<|;G7r7cvqUmq5i1+1kd6p*okdQ|3U-j(Hrm6Y#0OdIyiceY6yyG;y> z8cHjoN_4O%+l=?uD%WSro3D#rY}aVJq;*`XtOj)FiPZK~uXgr3!&_KF z?plT@V+DyMZ~$VYMY15ed&p*JE@CiE8Pe$BqXX?2Su_spPIyI@g*9+ttB~P<$81}~ z+dk