From 02815f9d3c4678d21ca66182715170a2589d01f5 Mon Sep 17 00:00:00 2001 From: nuxsmin Date: Tue, 28 Aug 2018 00:37:40 +0200 Subject: [PATCH] * [ADD] Added API method for updating account's password. Related #1004 * [ADD] Added API method for updating account. Related #1004 * [MOD] Improved API return messages * [MOD] Code refactoring --- app/locales/en_GB/LC_MESSAGES/messages.mo | Bin 100545 -> 99895 bytes app/locales/en_GB/LC_MESSAGES/messages.po | 2628 +++++++++-------- app/locales/en_US/LC_MESSAGES/messages.mo | Bin 100545 -> 99895 bytes app/locales/en_US/LC_MESSAGES/messages.po | 2628 +++++++++-------- .../api/Controllers/AccountController.php | 108 +- .../api/Controllers/CategoryController.php | 25 +- .../api/Controllers/ClientController.php | 28 +- .../api/Controllers/ConfigController.php | 4 +- .../api/Controllers/Help/AccountHelp.php | 43 +- app/modules/api/Controllers/TagController.php | 22 +- .../web/Controllers/AccountFileController.php | 15 +- app/modules/web/Forms/AuthTokenForm.php | 7 +- .../views/_partials/no_records_found.inc | 5 + lib/SP/Services/Account/AccountService.php | 2 +- lib/SP/Services/Api/ApiResponse.php | 40 +- lib/SP/Services/Api/ApiService.php | 5 +- .../Services/AuthToken/AuthTokenService.php | 24 +- lib/SP/Services/Category/CategoryService.php | 2 +- lib/SP/Services/Install/Installer.php | 2 +- .../Api/Controllers/AccountControllerTest.php | 139 +- .../Controllers/CategoryControllerTest.php | 6 + .../Api/Controllers/ClientControllerTest.php | 6 + .../Api/Controllers/ConfigControllerTest.php | 6 +- .../Api/Controllers/TagControllerTest.php | 10 +- tests/res/config/config.xml | 8 +- 25 files changed, 3206 insertions(+), 2557 deletions(-) create mode 100644 app/modules/web/themes/material-blue/views/_partials/no_records_found.inc diff --git a/app/locales/en_GB/LC_MESSAGES/messages.mo b/app/locales/en_GB/LC_MESSAGES/messages.mo index 61b14ac3f769063a728e8a68bb584094d99309f6..51322f32cb1a92704121df839116630209bf70e4 100644 GIT binary patch delta 29239 zcmZ|X1#neYqxSK02<{RfXigwFB*ER?o#GHk(2zg`hl9I^LW?`ap`iqqLZQXIxV5-T z3q|k$Icsr0=FWV3X7#t+_fDXF-vcuf$4^P@zL7rR_YR&Si5!mXIHrKZ@iMW)@uZn@ z9gfZ64o6+wf*J7xrpI&<4o4F7$1GSF(_k&kfUQvFy)Yd{qS}wKIS_-yd zHavp$@h{Xsfqfm099RuAVQ2Km0hkXLU~W8wvOYM@|gFMag&HTc!}vTd6XRpH9(+ES3zxIGt>lopmt(3YT%zR1OATMfoqr)AD|}w z5;LP$w5gX3-QHvb5@~`pP#u4d>UcA10v9kf-b3xkKd6Z$iZLtAhN_nfH9&F9i1krB z5R5ACj#}VA)J{*1VgI$2D{V#`dXqkZ>gbNme~;?OyT4gUR#dt$s-t44i8VlNZF|&! zA(#?lP)9Nfb(bch#$DZ?{nys~LPl9Uf|{Xofa$;+Rh|dcL21-ZR6-5d5H&yt)Xw!n z)gOzhHy1U~Dx2PF(+4pV`Dffj)X@W5@D9~5@j%mYM%0evLUmNyTGN&{N3FCos$D-U zh9j^D#$idkjXKiIgG{{&n2fZ$J`r`$5;I^o)D8?rFPw^*aVBbO*Pte{1$}TIY5|u} zNAdu*1J6)9;}~qpQ=$6Lff=zVQqS$EO+>e}4eCAZg4&usrh;P(Y6s?6*IDQjq9$4&wNvdpa{j%D=u!-_1#{7JW~iOniW=ZI)I_eKI(UiN z8OKnwVjpWkRQn330qdbw+!pnk_OLBwlhl8)OBOeyW zrkEGUVisJFs(%r6)w(b-Hut!#m+t05$QEZqC0Ik@;k31+OpyQ;aa5+##rr z7NAys5=&u%k>;CU7G0z}U=R++(zpq8;C*C{jzpu(fMZY#T!enOVH5-EY)_G)v%QDf zx(}EQeMXz|5~y^2)JnVC{2?|y3$v2H3Uy=$P!1}#x5>1ETCPy;PSO=ycv|BCfVpT~OWn#d0x?2UDCJJ!Jjlgz;NQT4{4 z%1>cA%rcn;GQOh)5p8J*Cd7f542Pix9*>&H52!O;i&|Mc>TEBd=j}mlaf&HsCv#bY zQ0*$A#;I@9ozSgI5k@2_4n}R!Xw>U52lbwA$C7v!OJUNf=5?!#npj`d4vxZ{I2Tjm zHq?X;q6WT#N$?pa#($@>|7!S&3^hnU&AdjwsE*5_@*AM)wLx_lj;V1hro!1ae;Mk| z>_D~q1J&*#s@`MNj{b+KG5K`%KLwF2(@n>DP!%hnW>^okGfh!P(iQ_S1a$MdG|1u@=Dqz#cfm=7z=G~fCVRL9fMAD5%f`ghbs?xH64 z9Mj@E)Bwq5nU%Rv^#f5`-vCvwGp50QR`*CEx;!&69j>+RMs3kaRL9p*4d2*w!dUw{ zp*jvg?ObJ4KMhg!J7H0bKz&D++Va&%eYax=5v}|P>J$1L%VP4`4hKJB9W}5M?ne#a z`rdpQ15g8%#R6C#b!0K9i4R3hU^1%Rd`ypPYLN zQ45@jnz(zXjhsVm=@SgXgv-o(UlO%-4Xj;IU%-Lri>s|iPJ1U{n%$h5-jNKMpj?v6BY%tCGTHq@m(gPHIhs(qT3yjGYG zHQ;xs9f(3doQbLzhgtOgA0wiU?pjl>G94C2ZEZc&rRj-!ora@2SdV(o51|XsqAuxc zTb^&V`F>PJy=Apg6B~+^a6RfbXUAhA8t5%*C7FIQGcJM}s6Oh;XJXBRLG2jbTC?7z;m$OiMNY>LH5FT{#?8ara@jWotS z7>Qd@_53$68T=0QL*_85<9Dbn?zh=|k~d>8>3FP$S+=hGRopbY>#Pw zHsACjBi!ok!JwjLFauXVS?rF-c!cf_X6|2Dpjn?8~D%Xp0%J zAEw8#s1AR?w73CN;9k@j9!1@Sr&tV=ZZ$_#9#fNUj_S7y7QjKMw{1BFp?ePzU7}~G ziKO_&bXX8|#x-p^7JP4H*bN`J#dcnY<$3z!`5pmy#lX2egJ0W)m#9k3NL*0pkm=r&ub|mq3vs1ZH15`y#xD{%pJ#2a)>c}S9^n6tP4XBCy ziW&6&UnZg%KeZLSc9^sELC@Vly_RiJ6B~-^Xf|pq*I4(U`ZQT0xvj^++(pocd9BNio{dY8H7RWN{b9n|F; zfEsuyYGSK*vHvBA>?WfrzQpoaeYg3o*o{RJJAhwR>M(mK`g3+ z1*i$GvF=0-e9V?#MGg1>HL(N-%^gaIYL^F@nA=f`NEtHfU?Cidd2j<($8(q+GaoW< zLkY}5x;biqeyB5@j9SQQ)Y0t6Qg{nB;mp68_Wr1P)iIOa|Mo;QqbSsh$Dmfa0A0A! zrVpcT`zh3s+`-)V33bMPhs`IoB?ginXVcrP_fdDi=ZLv8P0;iAe=Uh{a78F;aqg#Bh(J2IAM+^H#Q_)5fkHNOoFpe zcV*rQ_Fr4NmW+hB#}@pG+L5!E2ybIDypP(6mzWDvo-`8*L>*yU)P#FuQk-hb=U_h4 z2e1x4v=%$X`3I0OnAb^ z)Y~z^majrD(z`JM?nmw9K`esq6GXJdA5bfEo-?MzoTM{j3M_@Gu^OtQrdSSJpe8&W zbtxC3?#Ka~euBC?Y0sNqP)ee9ya&4U{?8?%OSs*76N{5he8HSqIn-8lLDgGqJ#2l7 z1<3clXkNccr~xBTM>HGNZX@Q$3#hyE84K(E_xsaSXoPtvh(Q<5M|Hd#L-8JJCmLKb z9kfQ(AA;KQr8d3Krtez4E}Mn;p^mgJdSffB!1#{dM6%#dsIB`I^+kJ%y0yu!m`ha@ zb!PQY0}jN(ILCU>mcPJ2@^fA_uU#YbA>9&nq~Vwrr=nY*)h-*Y`T|}>P4sWnPP{`+Ank2)l)ZU!n3Hrg>PTZz6a5h< z>HS|wq$U~p|1w{~aI8xD0Cq#Kzs-lG7lx6ZhWb!_KpjouyJlznQ4^|xT4_5>j8UkG z4My$kRMZjAM{m9V>urStsGT^E+Oq35{Sv24C~3N_G2)XKf?o1OGQ zr3<3^tBgsoIcfs!kbeWls)+Q)XQ=nK?E~|h&?MC5*@o)qAnIr?p;q_`8)Nc^W+&RB z?$AI?f)h|Ho`KnM5$3{Os5@{2-HC`iBBB|-Ky{Gtk(r@4DxC-Q0V#=EX(QA`TA~Ju zK&@y1>ds6+-K9mSBiU^8k6>NW*D)#Pd(8f8fS||b6I=ydq`RY5I04nc5=@5iHva%> z!k1CE|0$|ovL|L@F4RiPp}rR#Q1!wv1x`RsaP|}SUzcMQ85&>*Y9$BJ56`2%c>mh+ zbWhFMXG34|^P&c>W$l1Lq@z(QT!{&BBPPH&)Q)e%JhWd=jJ=m6V>r@)P&cgc48Z9B1didHfmx2pzco67v^YkpjKYo>aIyd6~D9gLUlL{ z)o>=N!76m&cGLteqju&FrovBH1XH{;TV58`Zyjqp3?&_oVR#-(>HV+z%KTb95Op@2 zQSbk5)Y*MTO(fN8vvs*pE6tB-urjJ$W7LkcL*1QF)DaG|`HN9+!5U15htc!z|1J?x z2TxEdc!#Ai?;CTL9Z@Tsj=Dq(QE$Tz^un{45-(zF{0l2!g@4Q$55mHv7o*;mr3zZjTtId_>(1$2+sqWTY*4pxYn4R=F z)DFJD+UWJkd{^pQd!Z&Y5j}Tm1rhDQX4F<~wFUc7D>;VR>g$*p@1ri=7n`5@v+2kO z)!rX<*#c2pT>;guxh?OFT2Ozap4%~rh+eO`sDW16^d{5<_MkdGWxZm{@1j=l8nq)| zPy;6YVg~R5jVF)QOcMiSBcxd2PyA6Ojuvyi9b5~vwhM18ZHVon@j z^XH%jT8nA%0O~HCMg6qAfo&mR$QG|@+sF}S-O)NoT zGm)&Qj{Hy^mq2ZKCDd(hiR!Q~s@_=Cng4)#YgVA{(tgx}&Y~84JF(kz^qdUMEO8R2 z=L_dT9YtPrVL{YD^-*Wn4Ry0{ZgUaTr?!;MuYl^H4r=D#Swm509EDo>Hgw@1HvI@Su}`S>sgjwU%8puyyC@MA zltRs{CaR-0s5=mb8ZgS{k3_9_w#{FMx|};u?N8bCU#KJb4|SxelbeZTLJgc3c`MwG zLPWGxHBejL7iq+gQRS6T z|HYi6F%fkff@Lroi{l2Yj<>M@=1FA+Y>avfI-)x2foeYpbyO2kJ2@Bi;hB%xfvu=| zyHE=_hMvFwze7Zq?G>tncc`sRoZ6(*qZ+zwItaD$N~n$-qK>KsYC;`sc{plEhuQp@ zs2x~_+S#qCdH)qTLWb_Z6)!E%|C@|cP9<+zZ!laLmj41YdXk{N*A~38mO&oVbgt3J2eb7z+}{iW+m#99zeDK z6aDc4>Q}l{>71S)^MR-dHFOhEgHTjQLu|qKs59Dt`SB3yJMk2?!ldcV*88B2!WVV> z15jIB-sU$%)o+iQP?&WX>a}!FvlZr`?!YS4Pr3D|BRPw@Y}al1ebfL?QJ3|LO_#~w z^!)Z)4|9;e9QCu{fb|&$kTb@pws6!u5$*ap-@<56$Paa(>4)qipyCa(8C3lR-m1odgGgj#8J z)R{L$oo$%SAB3tm-lnIZj%psN-b&Qj{*3w#>_n}6FKVaGpmy#qx?My*649CF$YNf% zKvV~1P%Ev1T4@v1CGCM)!6;ik6E)$bHoeKZ54EsUsQz!+^edb8%F6q%_d8=&GxMCN z28B=qRlpM1%H~f-b+o{`5jF6B)XGkx+TTI#$ZOP&d`2xKMK-7BFRim-MbfRZ@&1=3 zGMkK|coKuqk=>+=VmXpsQS}y~$}gb?PL{*$L}v8-R6{MO5NaYNQ1xn}?oe~oo#=#` zaI~9<&SnB?W%E%TY_M)a9mPJ>mLEY~u8XJ@-m>M7Q7e3n`m%ZDG#?%pRv=vywc=4& z1oxx*b3Y@Z8Gb^YaSC6vWw}uk3PP=<8tN7|N3FCiYT}(x6NyCCABO60x^*F{-a6D< zwimS%=aHjvJ8lut08ddX|BUJ|iOY1D9(9KPs2LYU?LZZ4JygdnQ1yDDCOQDs-*8m@ z@yG|qF%$K=?!e6Y`G0|kUWcc)LP9^M=fBx5jQWy|N6)w2dH`MIU&l)L+2&WwWxnxk zP&+xqrejebre9D;c@j0ji|G09f36eJrFe**+lsmzDRP@L^+j!IAZiCHqPDOBYHM4g zcC0t*4)jO$GY-{HEUMjVTfPmo3$j{YPf|3Wo#Mam)kEy>4brgqD6Fr@W_g`Cciws?=|4Ijo5{P(Ka*^Eo|# zflv?idwVY|f)i1%Tf8klkGV;|LERmn{KitKdM!}D2lTVXx{2f^;}^`2*RTL4Dq!*h zQAf}URXzmO!3r#dhf(ccp)P5bf@Z=cQ4?v0s_#a%Uy23sD7uvY4-s{gsgS8y4Rw1% zP!)#S{Dr8U*oVG&7qt_K3Y!)BqXw*I)7?-5kHO-&%I04|?Zi9GrT0H$5mT`Yx+rLi zo|U3HTw(KnM_saqSQrxqmdm_5i0SP?Z~S5&>xs1MCb)X|(k?bI7oy$nT7esOd$zN0M> zRTzS*Fb~zyPF28bw)_+7E@Ure@~fiicR{rug&J@vYK6a}7Ix33y^5Qo@IzhRmgv?@ zM-$PdSZ50^q6SJ>!gN>wHK8Wx!bsFs$J+D`)I_eJ&iXxSrvgfvU+tQqj&vld-dfZ| zkCx>9cM*9>h6YGq%IW#9*h-*g-W_$T$DrQZC8*yEwxL#h8rAW0icv0r(0vpkEpDjjo7#J8GaVU0*DX3sK*R3+TdIs4tqc zta*FVq0$9V1D8d$Ylm7$Eb7y|#!W=u@I9y>pQo*NP(PI3pjMEgoJqS->C!gc0QCj! zit2bMs^eMKRj6gdSU?qHyiLq=I zr{`ZdRzWqKin_FiupvId@>s5_SwMgEB7Fq)GvOHOht8j}Xn1$j_EJPKkWERC8_MQaVz(bY$7X-Cu%M%nzar~!XK-G$YtI}?xk!v2bx7~gS) zh+c=6s5A7bZYC0d>bL^x5;nEzVW`(@7OJCds7rg&rXQhhe}WpOJUhBbmq1OZCF)Lu zpj%rLLqscfqqb}eYNj(#J1`$Lk)N!4P&;?#>LyBDYlB&cmBlnJ#}1+3*T6Y2V>dRGs(Ge6wolRBLT?oUH*bj^0YSh42P)BtO1MoH0#9Z}Ex(90O z=c4*MiTZN>hxIXUeW&MNOhjTCz5hFj45HvQ>P-7IFf)un?Z8mf*3Gc#Rj8HjM6LX= z^*m~8@1QQ*ThvY_Y-m=R3HAF!KGcy^!-RVO+Y!+Zo6e|#hM~UMv8a{*g8HfT05!p+ zjf`nA0cjs=Hq?>iL`|>&YM_#+ej1_PwvnhiG#P{R{x2h`h|{s2_FNvQs3qK3KcNecqJCUH zMr~#8X68#4h?+=k)ET!yO|Tp4==!6MXbNh8*{Ge2N449JdOgpgj^;@--hbWFM9s|) zp&-<6K5Z~B4!5pE-S*?Cx8nn9#~dxpL{g(ZK-sLNQ44F1+JOO>59gxB+lPhlk()?M zBAHs6U!B5GGh2dda0iBC*H(7sIF$4g)QNlegsDZP#HXovL=px-3 z8{!~rfbJti)RA`^b9qWxn_^Y+!%!>Uh`9;*_x{A8x_fYj;*!+J{ zJLYU_?p7M)3+Z;`C89H~f!e|*sM{Kbc`ypKl|Nz?+=H6fXVeO-v@^fWcE+Nlr=h-V z`%!n|466V8sJrmm=6^)b&;Ru8O#@%l2PX(M(;BGPq#3GVFqX$&SOQmJZM=$=F?R>E zGhMBHQT+`=O=u>nzh$V`b_-^86FEdgE53>Pg59$fKA;!r)E&)-COv9vGon`Ri`wGK zsI9MQ%bTEnFKCNeNF?g0MxZ`eGq57YqUX>5XNc$vcpcU8d(1_ zgC5p#sQN1~KOR9%=mlyb8M~N{OQ06g6x(Az)J~j4y@uDY04D6}HY*G0YC3Fz>S!2h zMGH{hf&His?xVhp|Deu3Wr&$j3slDgP-nduwSdj256*A4{3hyXl7yOZeBDHflTit^ zb&;qK%@WjWcM5fj&!fHzk5I3lS2r_2TGZ{%gQ{25S{pUt4yeo98#QpW&7Xq0Gwyjr zbQ@QqI@)dv4xt7*W%I9LA<_>}JK){je8~!-cBmEVk_|&$%BiRUV{LjJYC>C36Wxd0 zA-CfK5e@VbwPl~J8G4v>e$;DJ5%mpkikd)I)LS#y=8r`66N{?91a--_q84@rli+pK z5#7b)`uYDa5xrKR&e#N=6lqHmf7;P7)E*r z#$evQ=7X{T^OHV|n!t0^W&B`G)6evq8}(%@;U=OAeNmTb3~He1s1?pdy+&)S2T=7c zqh7PWQ4@ZI+M)kYTbv}))Juoj;q0jINikHvrES_>mxvlRLUq(0)j@Am!x-yi)a6-< zn&3^;3h$%N@-^!9O&MkS@k0$1gsNW+)n7eS|D8>_+tG`NwtgsTC#GNlT!LEZQPcnz zP%D0B^WUJ3<_l_ol+mUiZ`5t~M@^^(>WJH*>UBnaKYCz#-3~Vqo%JjX#O0_?}K>% zbr~*_p{==vYVZK{;rV3qvko>h&V`y_Icsgy&a^=NUeFn}kkJ@~n{4?l)WAmQw4l)K{0jz>cQJ3fr>i2*IL(K~EqB?NkfYm#!OXtH+`)>mt;I zSD;OTjVv&zQ?GyBRi_2Ak;)kqT1EB<(*LzibnN2 z4mGhKQ4`vZx@&u_?vq4xyKkUw(KLTyzH>JKPx)Q{1nsMl&2YT}p^!)r^Lqr2@MQ#0Fn?8zK`FYd|@1Z(=gPO2&q)Dem zf6_Tn-~MVg-P@MWKwZ9ts3X{l+R2^hdH;_R(ffD_HPaW^6um~7j$5L(dN8WtWYkg3 zN3DDXYGP~9bGcCc>_>e+&Y>1^1GSJB*3am9|5J`O9r#%Dpw6rqs$p$Z$8As(>57^_ zG-@Y?p$3|Qn#f#KyA?LQ4YjieQT0!u`nxgOzW)!%(2QT9ZgrwDW&+tz9R}HSMN|jP zP_J1q>Wl|tL0pQ3@i^+T{fFw;Io9cLp*QLeA|+A%G#Sg~(QDO-3~g-`>JvE{wY8H_ zE1r&8!4jLl9<`NQP!rsTx{SwB^-rT#cpJ47k5TPE+5BYVOgckD8}YRkLMIjV1SH^t zWTFnfLyjMbcPDs}zn+ks8HV9V98UfbXY9-1470i<)DIQDoSvsB(>kc7*ryQr{D$p# z@ihZqYwF)Tk;K;#b`uIRz*&NxFx!u|`e*Wv5w6>^G4yeh_$@;0$L1;BZ>Y4F%xd_M zh9?O5NmpU;l*Cu#Ey_3|M+fpx(okEZ=K<*f)LBnl$D$uHYsfo6og&1S684i$Px{+u zA&Exh9n)XzHKu}|e021jc&JG_a!{c=Aq8O{A(Eh{ITO)S$)>5C@Yv6=i1^!4@8 zEBlf2&nb_g z;YZR(N&i9^V(TR!KAbYWCYOj`BiyqC{((m+J3#pQG$ay5+n1DWBfmon62ICC<%u^V z+$CKR^AhxoApMefMw_mqGCSe>449S9@?&ZA!r7EpAmok>Zk56P6RnRB+7PBwLr)un zBQNRyXu$`?^Ngp?RXa*G@|KdmLpl>-A0ZE;zP06Ju_W#FHxGJ>64p}x4EDxKv=2() z*vr{P5^{6WER($(-g^2(E^=d5j@_&_EyoAhzwjR9@YkZ%Lj$-1_F~|EXAydj^&FP;k?v9mh!P8BC)mwqbwLFQ{{w^cFj) z>MYSe>{E~YeYWk_ykCiYp@TNA%eov!pzoxEM-EzlncDXrz7Y$Ks`x_UneA>Lto1C+X*LOz?F7T)oX6!Jt(h9-3Q9F&p%j_ zy!85?4)O;B$4N2*2{man28U7TM}8jCg=|NO$y;LwqlzOD<$AVLo}2iBZ_4JA&PCt8 zw(U>0?l9BDF@nCqnku{4zqxG-`cM+GX?Blio!Bc-u-Guw}QfCFR%XqZIL(*pKo6;?szK zB;=%gK6(EUS`lw&myp`@;dYcJ(u%@ngqjqdq>-M?tmzUBa*!TJx)|{pl>ciQI!=*p zLi(LeSEtS-@`~8B`naQi@Fb_Nt<*h8$VfabeJ&t>kbWa7L!*W?I*t1CMRy9%5WYTH zDa%HBHWtRW1b@N<>gS_FJ!!rfH1jv{*3@}s>!_X|>3Wpcp}ptPUEN8zO2!2W!l}?2 zvlH6TunhTg$@3-Mj(Q&mlWpV5`pe#a@JB1U*NsiuWWwls4Je@(08- z(ylI!#9Ra(xBic?9HmM8Y6n%WHx2ZhH8{p%7V4Cs&Q%5tAikKqro_+L0XGs)LVP}D zOR*Gn{mIi)pR|7KUPW04;!}uM$L9K3`6rQIREuX64Pr6alj4^l%Dz75=`bA~=($h) z5W$y_i#lGI2!AE$4?zEVYVkL&*nvLtQ$CfpYe=6ZK7+iZ*i1Lri-I3WEGBb>ZFrja zd-7a_5W=@lQtG#%d71NLo))$}9LexA7@?N%1P->r;VF%GvZmGLI5cQ|~%XpxqM6Clfq>B@U$sp2se1 zunx5$9i*pnM^)s}dp3yl7&{5&6}9mM)NMhTo*CrTrA;mJo?{L2yOJM8I-2+m!Y$kG zH8!Kp9?HIb-fFOYgt8Rwwu=;2zqj=Ep>x`Br=qY+4%Jdq){yr>9Gm}wk3Y|Yax!Zbt}<9op0K`pzbi* z)F6B$bR>QL>z^l&&@h6^Z)}5k6t?=N@d_H`vFS(Dol5*QPWz?~Nyj$Y{om)5UG=H| zQ}8qSKGZMg#i=eO;-a%EwsI)(zX_cP5e)t>YsEY^0O0PO?XT^mM~hsX|*L|9+mr2xg;S0=Q@Z6g9%@sf2e$(Iw|cS z^C*}|yDa2oAn2(|dWkJBj>!p~$!|bgJ(=jYg{>P#Ss&%;qUEGQ8e5=>dPY&9K0!}) ztKzSym&{(g4YWHzUJ(ZV`h55%o|X7%+wUCeZXmsrzAoClXq*+2(w)b)`9#?yLVY^x zOIau4k8N3F(rF2I>1QtGfyCz#uSFd_D@p6QYH;)*{}g%UNw2VVLaCpdcsKG&)9)(M zclE8QK*gsdjuSo-&q85mLNh8irt)s`%MtXvAwQm=XB&B&iGNSMH^dj%e3d1qpH$@C zqpT@$J@Gis_LH8vzY}k-Kh9^Opb#0Ksq_~OG7n|5 z)|;@1bY1*Ropg30(@C$g^>0w#h4gOx`ZOR?g22Du@H}HFb7$utz3Ais?jR(zg{sk) zaD}pGgmSjyJCu79QrPqll3K%p zCCX-!cgW_M5`M0b7ex7KGHTn*+|-POX6yL zLRe1tCAMgf4DMVsA5M$Gqq=yj_6Y^4CgnT`(2oaQ5#-jAm(dJL2 zo}S-qdX7yO!G8&_soR`(IoY(r=HL6821DQkVG|Xm5cKeeC&zv|sz?YS{v#dKps^2j zrOp*wPj#KdyHHjidl8nCSAu#z3^Z0{gaFF*3?=^*Y0rOI^f!rZ3^1P%MP>#ng%dAe zE2pA^jHJs_Zv%~c;@4*f@k2HdOx#~rfu|sC@7eZBH>Th3Y&t+0_R;^dh37xa+(P3{ zRPd#PGYt0iDNEjH5}$0Ix9#LI9VRC~y|}prsk@e-=N#!I)R~8=3D5MCxIYaF zklBw)e-h6|#S*rGrxpK*C%+^1)6B68{DiK3KKI4J>E1*M}^9GpLAC88<74?SWn|IVT&`@e+2xYLw~ufE8`tK*~=Ncdz6hQKsCniA+5c$ZJdGw50W`!h1q6@zmIgvY$;g z&p)e^UxV01tj*+>qn-xD^?V_{l{O)ST_($M!PXh^^}G6vf>C7tVjEQ>K9j-pT(cge zgUh5JQKuX6G}Kv6Sq{5vp33}VEalrNZ%#ZJbqW&K^WOIT8+ld9o9M~scfF-VQqoZ| zDs7?gA3Ii)D;pO9T62fV0yv0Q`5Vqj%%?fBw_4d%O1qN zSUw@mH{FEA)pN$3+4?1OocD>2N#YitU+IjSbn(73ZsDco&cwlyU3>KGAKP?UmbizP z=Q!iGUTu*i1uHRA42g*QeCKBJxcg7bIukaFi4KnQeZJ4DOK4Q|!KJRAefma3MhAz7 zM7UzYU8bW5SLi@bE}0>rQQDF)SD&6yeIi^Dkv+SIh8K2)MX*(xx~p$YXh>+di{64G zSyrFEkr92^!H|fkfY>XqUc_a3vo2NqO{a5_GfA;BuArcD#pjOka{48;iQ@4ayqtNx z;!`GZw)86I+3x{8qkFibgS$t$dWP5|_%_ScEh5shve3w$;oajqC3oIUlzfmYq-Rv$ zu;4+V@#WJx*Kq>>o4%33nJjgon7&Mx`fACpM}$Uk4AGu*2<{oKwFEm_^ayqJ4jmMq zF_&{^s=1YlJ5$Af33RSX7=NsUGpTd#?n2Jg@d-;g|4jA&dY^l-y7No?^BT@J8RI9l zb#_S{pETIn-Wk89i*ueczFUa1oYSTA4(l1-J2b>Ic$8-W(To+`wQEF7c=X)e-JDtD zH-|chJL8*ocRoy%z7|)@vpQEq-_S_5IWoR{A7{p7@ooA$lQkLL(%aVU#+pRkaC1sai#A3yoQn+C}YM zYVTF56z}hUuFLy+pZoK0wk~Q@#2T%Dl4o5y*TEgLY>g{lp zZl_#_<4Lr`(G;IzcB~QOaAd_c=!4;y8wX%!9Ebim8&&=j`r!st`@OdOf+=@99udhx z!As1GK7$;NW>^?&V+?A*HJBfFV-EZii{MKP#Jr!;2J2%D?1$-b2^PS$m=2Gk+MmbF z4mT?#l8X#Stl5Fws1;SlJlGmDV-&h@IQrpy%!q3+3vNgC^E(#ATgXN_yyF}WHrJ66 zi=sbjr>mh4<2yPMQHMQI9Sp*(_>IkOtaRy;d9EEOG{FX>IT!XD~4{E?{2@XdlEQ;EJil~7bpjOruRWB6PVJv3H38)n> zM3pZ?Ehq)GvxiVScO!xQSH?3kG=U6*O-BK!{A#F<+M#CN#ipZd`Ddt!O+;O`d8h%G zUYyE}LO7~}!Kj`10yW?y)By8QNAM%6 z{$5nQGpK=X+Vpdq_8Mv~Ulvq9fo>wISOwLvA*$o{s2vHl<%6wbZ21h-M88M1TZh58 z6U*Q;tc0#%=5BOE)fa}W(x-$b&6Np2te6)22>Mktuq&fecM6|M_s4cmK>hK|I0;xxs4sxS*q&R8? zb**ht?ZZ(6#-dg_3iTbBW7C^aJA4!a@ER7<`=9Cyv!Y_C4(cFZVMi;hfWxpDuEyMW z3bg}|P!sYQX;xkkRbCVIMeK+wABmdqY}8S%Kpn|CbZcw&+6pJFH?9AmR+5%k>H|^` z)v!2fi)&(e3_*Qp;!#KWCF+t*L``TGcEq))iF<#^XB`WE$@#m8OeI4dtwXK&FRY9? zzB1qR7U&}V8J5EtSOxcBetd(>)scIY8E_72VH+?2ccYH(xXr-pJiQx4M^{I6VaAs z7;DZdC#peNtb-w_%QXr$^J%D+{DAr}ZAZOsdr&Jnj;j9s#nAKq zS0bWI(FoIEOVpXSN9{m=)W9RLASR+Fn2fp;`_LPYp*lW;n&3@TyZ=xF`F(BL6+%t0 z5|ZzB)F+~?Y;Q6g;i!fQs9QS$HQ;>o!L_K%mV&Cc2XzO|VO4yIo*f)-3_&fV1FC)` zY9S*%Y0iHE5e<}#n(1#geFmG6zJs4&#c%kUp&Ogx5p04vCYXVHq3X>+m0!o|SZ1PG z;HRjG48_zq3H4?h;Sv*}QJ;P!k)2+QQjb09RrLJcK&)v#5a| zp$~dZv6m0k&JR_;80symFopA1$1QC^Z(DI7s>4y33Fl%)Tw(KnM%|g;Q5{}J4R8-t z?>%ZqGfp+_3t)QEWl;TAL)B|NmHqc7(vu8rO$4UJXw=pZ#WFY>HNakU;d#`~y~f^{ zZ<@JOU!Vr~4)qpo#FBUjyWk59#8%VICw_>Vh&o<`Met|TSzkm=F72#yS&qcb1|b?y$O#5m86iP#r%(HS|d|>71CAbP%fJdZ?{y zi|VL1s(vh%$5E*7$VOYf6;=NTYULMDXYV!B^P893k)H@ZX&s%g7oJ2ls4&ZX8S9}2 zYK|qaC+f(?qb5ETHGu`Fc56@*-fq*!P!qq5+3=AqPc>WloPQ1?x~+kzfy$yfsE00W zkGcy9sG~?kO<+E1z$MrW*Q3t*E$Zzko@9=uF_tAAjxL;u>TeSk(ffarh#I^?ZB5QO zreQGZlC`qw&#)-zDOd?Nq6WN&Wib0(GeCVTMLHZS<20;@`>`1QhqAH@61C+=ZTb~zLV4$zAIr5c7wJ$eh@YcY_AP3nn^6N@!JPOCRX@voQ@_M~ z_Fom6lA(^numX<7?6?Kh@EEG&+n5j2d}lf;gt~M!P!kx4YBw2m)=RK7ZpJ)#6V=|a zz>JrF0sCK^bR9BO@F}X|Sj>wHQ9H5Smj8)b!GEZF*}pgS%AwNDF$nu%L7a^){2A5X zSyX?|Q47xDUT9WU6*be2s3RDS1#kswV*61?bpw^3WszxD7FFH?mEYgye`C|jQ48FM zn)qX@?_#sF?f@d?D5!=x)B$P>zp^HwF4=0-%Fbay^jTsIMBS0bs0Dn6g>V6CA-hp` z;TCEKGAuO{E{=uu^S>bx-GNBdS&v2yG!Fyt5NZMskOq#NKbWnqfx68dQ4{|H)qW=G zbz6lR@Dk?7SE&ASEHm}0Vs5?vt%<0k{?_TJ4mYE=^cZ?R9H`eU)pFB8dDQ#g6kXT} zb$N%{@>S?VdN1nrJA#^+bA|Z_8|5)Q<2wcs(Lf_m1J6Uvcmrxh$FVrx!OH0OquGHb zsIw149od)G+16E9g#2GoE5D5{O#72LqLS#=S+*def`O=tQ&1CGXWft5fh(v9Jx6VA z`jsXfh*6~LU`t$y@%S1$W6UbEfCJc=^iv#))mF3rI@1lS%_sB>29qwdhK~|?c7kzj^j}a zU10LvjtxXK(_gKBpdab0sI7a38sJ}>pDM+iU3OHxhSpA~FI*&Qpi!6&=b$FE8gt-Q z)ZO|6ef0ik-fYe$C#ph0%!!q;8n#5;h4H8znU312)u;iEpeAw+wbJJ{oob6Yy6mX( zVyOC6QRB2gf4%?VL^R`}w!#$D881N%v=8-K-b78zXRGO`AZjZsTAQHy>5e*@Sk!=H zt>2<{bS>(renz)uyq$<b4)o zAUuh>d|unlz@7C}zRKeV&>tP=3hIw%?>dwvB={9Gyhzz}E8&F%k2ep+KQD^lObD{4pb2I^1 zkaPn~jp3*xibM@K5ncELR=|B&1z)2sbMS66(VA`|USu@3eu6rJ7N`kzMa?`4YvMT6 z51l=ziT;7r@Gfdag?}|i7K}Qg5Y&-1MNO<5s{aI=?;b@&E1PLujU`F%Lk;j0byjKj zn75z+s)In(1S?t_qV7sZTizEnU>s^6pG|jLwMxiFW7}b6)YQaY_hu;6&L^Pv!s1;}4 zXI2`BF4E;}x(({KcSRk^KrD>oQD?jg%i&cli+=k}x}G%_bqAJUYP^V98Q*c0h_>iC z>a4sD7_(s!(#22%Hp5ET7d7yF)N8d1qwpT;ZR&W?T*isGmh@_zggp+KBe;j(l75Ho zVnpU1Hvcqg7uF@6=7_odjWB?8chp2iqVC2L)X^Npc9`{d{yvC((S=)3J9zl+P zcy;t8-5pgPfq^&;o8abS?7t$;MiMH%M&ma>51rtQ&BtVox>$;I z7-}U`Q3GtpqIex$nD)FGpd?0+Zjaibt*A@64|N20QSE##m~ke@ zbsR#5Y>&0DFXq6ds1&nDF6T^}zZkXC z+y8W%75rf{?pohrUMl!sHLpoo^e0^nHS-oW-4iuHEb0iSp(gMhs{Sg}z`Ia)<0xuk z7f|_syNRfw*EO?}%&3Y*QTgSqwNWc?hHBUieJ~QM;b&M7S7HDj#>V&%wUA1GnfJd9 z>b32FzUb~uL^BOVon-=Q0+Uf^ITuxNBkG8DpjL1Uwe@#VZ_j&dj>WH=qf0>bI|;Mm zLe!Qg+x!Dqfbkudh@_$54W>fp4L*~Y1{>luY>Q{G9+tSt{lF+Jj3;mazQlAGcFP<| zG-^jCq3+Tu)B^XQH(tc7djJ0-qAh)aI@?sY%}leQW?lld12s`AYG~74a0=-@*aM%U zCeZ4Rxiei+1BIhj9);S$FKv1TdVc?3PQ-_TZKw(C!LRTXMq$Uh=6(GYOObwtx*G-V znT|`Lj-)PXg`| z=)z;D6+S_osqaIx)df-cB~TNthr0D0Q1w1TO>8_C!o{f9^tXqce_A4^$WVhTm>yrF zXQq$L9ms{MR|>VFN*I8RP;benwtO_EBRv^)`R1S|u-SSH%aOi?T4+x9WBX$iwdIAe zD3-w9*a~?~9P3bDz+?CgdOa~aHVLbdK7;Bo%TqJa+^C%>jG90dn{J7^)O}Ew(w#s= zM=$~XaG`Yrs^VVjSyYGjPz~RqANoHtM^h9vfkvnuX@wcFKbFCvmYs-75;^~J5Nw=Lxz{;Lsk?skS>9p zu`<@gsi-49f~6VX@r;OGmxBM8OB0CdurX>Y!!Qs>qGrAfwW0&437$ahz!jUmf!gXP zs0qEt9GL5sSy)-r4%J7uX4sC1D)h$GI0UsLBTy5Wi@9(U>NPrwn%EuG2PW0OW| zPddJ+%x_IP05xD0)D}0xQW%Lr zI15$27xUsd)DHZO8sM!h&-%_BWiiwa*2l)!5euMufsO1y&FB*9QvHM4fmH9!R{5av zv!Yf~0JYWSFeg?=t+=ht4@K3FLT&XB)Lk2eI?|~~JGWz*t?&zKMF&w8FQZ6t(lRL6y^Wl;62q6Th++L5-X0lT64kG1J>m|j2szayd*{D|73-Kd>7g{AQ^ zR>pizr{^ys?NA+mjp}e3=EtR|_xe{XfOl-UkC&N1Ud%#%FzQa#M{mY=G$W$dt1W5; zQK;8&7-~WzQCmA5btDT>1247tn^AXYKkDo+qb}VuTke(0wD+^RFx-ouy6DzzpP9yV zcosFo`=}ZIhuWFc-ezL?Py?4l{k*S@npi_ryY@C6Vawxf{&37q`6SeiF2kyL(%b3w zoNWdlv(g->vo3*ZPyw}~7N~*yU>O{Yn&48@1XrOZv=_Bwhf)1pL7n{_)RDeN^_R!j z)GO=jHkT!Y482AzQMbE4YGor(M=}xB(OlHT)}cPRhfqgy99?({HP8#x5oSs2^jzlb zsP=_WM^nw_H+2)yE$(PDLQw-pqgMO{>M~77b-WIByAPu-;aSu~uG;)tsP@lL6L+RF zW=0)#e$)>2Moq*WM??)qqqb%SYUayr{wmZ&wxJpxLv8h6r~&TU{C`j@Oqbr|2cRxx zSycOmHr)j^P7HE{ZpRoRn#m;8!1GaW!y?qqY(;JHZ>URl5Vi6PsEJ%h4Rp`uJ2IFZ zN{d0{XGeWc8d%$)#_NgRdjF$sMgnSpvDVqB%e5S}f}NWwhpk9}ISOE)Xa(aFWcES>*=b;At z4Rz~Jp$58wYX2B@RPRwcnK853VL$Zz{l6p;RV!+JK|8FjfnMRgF3x_l#SdOWJ# zY@1$&n#e}f(dK3U9G!Cxj}9s`r$DHbt%@NZu0?DM^|kAE7Z|s z@ppRux*dr69<)YHFbcKh!%;^t3U%wJqjqY6&0mMAzY{ef_c0>+lwP$3cTi{k3X9@9 z)KL`4W-eD*RCzU2$8}JbvyDwpz|N%SqZal8_09LsZmf&tNDoAp-v0$e0?F8kL3kTW zVU8STi$icY>29c_Ig8rrd#JbM6>4WP<}`Pt2t_wXM*|?PD8D97V4~*pw9Fcn|~Np@4QW4K^@ftRK0&tN1Hm2dG9lzR-Oel zUSV`=>#7iOVN2AR#-LuauTULKK&^BJYNd-&mvbv>hfdk@>!=Aow`pfy)6NgIumDv5 z!8Y9>FYmuHI*_3O`=Mq&$X56QHP95Sh%0RVWmLOIR(?1044f6UG8byVil`lFi0ZdB zY9T$aIu6Xo`(KO53NotUEi8|&{N|RnMWsih8f-$PUv77W4&b zBI8gylZ5(${(!m@>)k{&<9(>Jxqw>PLsSRvt-b}#QTU+-%8j~Q#ZfB^w&k@@D{P4R zpmjifaAL70CZQI53d^87tIKp)7d69Hs59!p}OGF)&wpK+oY=COe26c&g zqrUxPZTUphfOD`sEivkiBm3MoatDi%k*=iq z`CcANknW1gAA>rAmA3pis)K*A6y_~u>NQ4P!f4clC!i*>4psjY7RQ%Z65Rz$I~^_} zpP)L5LRCyc-QF#>{12P|4ApVAGG?XKQ9IEUwbEgz0h4Tc8>+waSOMSI{IWrwop3u^ z5Gh1Ke^kZE=)$$AnI1=V_^-{+U)Ef*+E|+WE~p8NLrvfZRDXL=6TO8xvJB-+z0#<3 zGc2t4KZ=MNPPMK^ozY>NzGL++Z;qr0YN9Ps6B~psoQWE66Ka5qsCsWu-;?~o=7<`i zCOiQ3zo>Ccv;`~CMf!xT@LUy0XRTm53PzQ;M|F^Zx)U>P{uWgI3%2|<>h9#OXckx( zwXmKxJsjPd@mwN0o1LiJ{2VpofJ)|)G)3jdqXt}z+T#7F0q&tz>Q~uJumY;z_BQ=F zYGU(H<7`9i+~dl;|3O6jtC+J6K~;=GbvzMWxB)f5NesppsFf72YHoW&)cYKY`h8&t zYKNwy?$A2agwLbr3y7+hzM6gii&irORJV3VRUC<0$z;?-lTokNU+9hRP;X6|>gF<* z$10?IqP`!q(S?gpAG%*rZ`BE#zUL;QmAyta%vZy#q&@1J-5>RBABp-YINiDg^{d+^ z)R*pvO<%L=S2mroruniKLG4g2RKM-4?tVn{Ghn!_FbUP+VrvTO_xU5(8jIF)dj8wa z!PtuQebfSK)OI@RVh@bK1*n}%UB~IDhb2)zBL<*;`(1!__51&6B3gNlx=zo3+tm_P zVI_9JzffmbwVu=S-+YB)ZPMFNNAMb(qcg;`Yl*tNW3dIU#v1qrwSX%1&2Piw(euy$ zCK1su26IqnzSvX1Z#1YM8apr}9zy+WIA`-OV;a);P!oA#{Reeq?@&AG*T5WIF;sq4 z)HuyBvztg)BDyU7QI{hDb+(gHZ^2U3Z9R-S!<(oHy+I9-wxPL%1yJcvP_I`nRDYvU zmv){_r=a>fhHh23OT>lFMrLM(P$d|nfn%r%T}SQIORG;) zb9A{-^~$2&`}(MQ?ND1Ejv8;In}`OSj~Z|jYQV#&4z8ja{*CG=%_n9e*-_)X`*WX6`~YtVFst z24g&G;N_^DS&c!s3mf8No37N{Y<)P=pW88yNNFnU!)Ev#8)Kao<{vD4jl)RqLY-;# zmS%z>s2ymE+PNM!9fw-!*Qk{zS{I>qb}j0z?L|NR{QrZ9R(c)v+w0$`Bgx##th6}l zhfNvOK%bz#c)d|8ABFm%wFx!B)7H!AMf#@o4(dqmqbB$gbLsu}YHd2oi+UScqTc_` zSPo-QN3syr!E)5C-hf)+HdOtCsCrjX1KdU(#dE878?(UNs3Wh4ZdGVNL=8Kk2Iz@8 z^GH<1p{Rkz+w$3{0T2iYl~t%(v7eMj>qPB2GwEVZsrm-wDv~TAC6l24%Bzx zSJcW6ppM|QEx(DnWA~8D?smK&q6Y76L7MJn>$0FOSpn1pE1}N19cn9kp)T!kEQ+I0 zcVz|E#UrSRW$a;A+6v2%j=}Qy9eV!vf5(XEa$H3X@Dg<=yn34a^r)2tpuQ79s1Hva z)ET!!y)B`rc7w164#SGL2^-@*tb@V5OnVp%2`i>MqopBIqhg+hyzP&B)g`S`PkwmnTuTW<-71h!ASPK`U zcIGN->mQ)Lh`ym_fTE~N)ev=5;pjOM)Z4NG)$Vsxy}PKR^6kU>uQMs#$LaZ>!*@kp zvhPt_xErSqf#RzbbaUBlgGhNH>Q z%vPXQwjb5u4eXAoBg_tkqF&P&)C!YO9qmB1zlB;^n!e`yPy)5Htx=b`C+aRFpeD4# zO++1DMV-BGKeK||sI3b^eURFr>J3DF>1Lq@T#foJ96{}*<5Tk?3PQb(Jy4gs59)(9 z6m^-Wqjt)@fQZgE8C7wo^)zbc_ffa{U(~=}ktRP6>M|8aUD67uej3^Qwy1%6*!=!j ziu7RAPAo<~bZ*BMBE`tKfx3L@`3uM1hukW=z~$Hql!cAz!=o)Hr3|OwfR4x zc5V}DVZWg29Yytb4%6xVzd=MRdyH!E7WJNc4=`Jn5p@Tup$2Y;RWKa&otTfQa3$)s zU5n~x1FGL`sFfeI`4>@l;Rd?3qPIlUahieVEOS^(px%O-sP8~`RK0Ie1FuBw*jAgr z-+B(Ub9d3RkZ3c(j2K70A6CV&(Y*i7iTpx_ZgKh;^OwgusN4MmcEP=N1K&|XNYM`sA9eIN4=RIm?vc#JD`BCLXaR64t1YG1MQi4d%IP)Q?hnhft)Fm8j zoq+0i0qV=R*5=|dx}_VqUyCr{VeE(nvgq!h_)ymwZ)@Q6(^y# zI0^M3S&iDd4K}?O)$SmwqqC^?w@~e#SiKX>-N}cVU{}-v`yiLl?T99#_x5X4NApnw ztwc50f$H!#)BqQ4`AyW;|AX2opTTA)^P(2e5OuVzQMbJdYUQ!Ed?;qnA&(}afu^B4 zoP)acD^L?VfI92TsCqY0ACL#A%a>}1Ihq_;mUJL$;7+L5vbRl#qkd)#M4f#iX4550 zJJh@m1+Wk4P8fn)Q60WT4P0iJ>9`VV>uaMX+}x(Sqjs=AY6pg)wt9?p8tPKcN45VE z-D;3xE9|osPT2IHsI9w?+JV%cn@g1*)p21gg=JA4cS9ZBr>M*NIY!__tdCDouX&~6 zW`dE!dH-9G5l@D0^{=+z9ct^-jxd+60BXw%qh?+mbr+hTcBU<=epl3oC&uPaLcIku zQ4?Hc-GW-cz7f3t`Z;`p46Wn^mcxKAOog_nfqSAZVFKz*C))Cn)&HPwX%;4?8RtNCP#Cr1;;17FMs-vVwQ~JM zMk|U$?N9>h4va><9aB*KEJjUaIjWs|hplh|HKSXoj$ffBmi|jKp^~V}R?b=%wG*vT zx4k{;D0=AVVb-tA44a^*V`~Izrv{>S zVjOD1v#>UUcZqdvFYO zM;@cLHt%RNP%+fjm$T`bsFgQD9YtqUzkN~T#M$&H^!)#SOeIpBf{n_+%eI2o7_()W zQFo#kYAZ{lIL?gJ zpHS3FTB8Q+V;zKA@krFlCRmeDmue}h-4;~8hfxzbjhetM)J{Ae%lof^-jSh>(vC9? zbD+}2Q3F*%HK>Q`u(h=-YQo{DTRj9dfyt=$i*0%>s{LNn-8qRm;s@injp|*G&x^MyNFC;rr9bQ1aUU$*6#i%c3#_?v0v!Pa=8?}&6Do1bXY-&udOZbB#Z^aOb^pouy*5lik4phf|TTioD;c6GZ%b!d}u@?T92j&piHYN#0R?9$HgDPf0p@PCVQs z9r>xymyn*YlkgcqPirQkr?yScvgwm1+p&)PQ2P4t=sG^8j;`%<%JwtH_oTnX<-8uA zhhK3V+$_gp8uHf`M=3rBS%??0gIp$lfc)EpPK5U#4PbiU-5{?sW&OyQPka#r=d$Z~N)>QGfTy-(}NvZQU=uIN_^g{!GJ@RQR2O zuSnO&j^tG(PtO_KK=GkWB#HDv;w=cfsUJ*ww4I>p+#>IHf}R(Y?WJrnp`7i{l+d0J z@c(^w(4YjBy=_PT5`RtUaGRcJJ6w-mglab5m-r$2X=BS%)9&Ao`fX|R+mfe$WS}pv z{{N2kxD%5z z?cY%XlL%AQkPb@P4s1IQ>up|*4+CN+@+R0pl>LN1CfT$a>GzFNZ77wJ5Nn^amueis~y5tQkfXdR5-*?2q3gP5$IWa?iaJ;RnABHo`cn{)~m zrQWCXe~IAvAC{em93=Rwhhrh}IKlubPA5zvt|v!gn{GMXF?4;$(+tU7PM0%C=eK!l zX|bC8acW|pUu@YG>_Yif`lvvBCJv%bDdN+Kzb6DxK9{_ggs#N9*(Ibmeei!4L!<+R zZ3qo1JV7Hpd05j$8ssNEmh?O7O{4s8)6j8(veu+u+H?qYCX-jvrq#!v`hzDUeQl)f z9zrhSS?Kdy@<*iRuGFB>Cp0>Vb;$gb!qavVYMhg@yridNX?#N{Lby-;KswZu;iEyb zeH8CbokzBg>J=f~nDVBy_dL3*n+boCae{)+sL%m(6S~l_D*4}%mydK;>b)XN`Ouj7 zhbIq_K=S{f?m!e_6^7K?AY_R!C4`Q0Q$>Z2L}DqHdsTvKj9jU`Vs1p z|0{JuiT_Lf7}~tVNJ20{&mpVgpAvV|rXX8>hj@0{HO0|bh`{4^tmn@vB!07lDmNz$ z^c*ud#$ayhRH4o}1`Q(q9eFK@pR@z6B<@4}d&(AJHR=YCr>7Zd{p$TAWj%;bBwioe z>1X9xBFU=7qaR%}u(uLC$&`I~&eEYD9q747d_SR(0(HDGHU3J_Ux%K1YVjKbcBRi! zlux7Wa?+=XPbM!tw$%+zMZr80^T}Ln8~#rGEqR3r{RkgFzSQqX`Bd@~2(t)N2uH{d zODx~3pt~6{J$necVJ}Hm=HttSoTSqQ}lQTi48F$J>-p>$Y*@D~lv5cCWoeVMXr_=G%Pyh!-)RHKvX zHa(R1ehU1kcL68R?mP0v6W$Z_R53VG*@bwxAg>W^8j<%98GFkX`|Eg2U>_P$cv-w1^Jh3`=z!#LH&>yNIHOe&8Sn5 z_)moM#HSI)>Q}9vWPD5I&!}99kcNXDN`qm956^QdpQ26%JIEXgCebc8dHw`F4M;Ds z0jvUjLnP3#9d(-+{HgM!pT(lgx+E(>`nZUEo((O3*kB) z&7!<4@g(An?c{zSt>>J<5lQ|r@@kS^ZtL`+eqrJfd`n+7=udIlRDnc4CJQSVn8z9P8nQEVfxyshg^erfVI<7)DI z+WcGAR`ju)d_BV$x4GNSt}O*|wm^md5&wg{Uu<43>iN=fYs&f)7Laa&PRg^{iA*8= zqpg31@=(&-ZU00)|20=7LbT*dE zoES^R^E4Phd+A=^=x@C{`d$)8PF zNKmuG3W{7L9pNv8)0%ZRVG9aN^gGkJ5UtmhB%!^zY0l)Q74O(E}q%`+wJ0C^QC z|DB9RHnT8wOAxq*oAT(>j*)NP;&Zkn%F*>v>FwrCd)Cee|^X6RD@?H=F*}rpw@K!c*#Y zqFo_2t%Uj4z^1|HaEP#q3f~a)6esMWqgsS8;@{ChV;bke-qbm3>#6QLLIh<^$m>T~ zM7kpN@-omU(me^~?S#J|{|IT%zoEQC;%5e!M;JtA4k`^KUfNd9LI>GNSEJraI_-}i zo*l$@+e9DY#dQ^U%Fy<%ZLf55`t4@ZWtCx{e{^FT5H`^`j0%P6;134-@YE!46p6Ps zFQ@I~3?2FqTGH+l@@^5=)7qAgxAlio9!%bL%CZpFlKzIW>%?mi+?z?1CJd*8`DEyc zromeBu3;4UQ%$z#KL%<;x;gn@k+;F-ucq!y^77Gn3A+Qm$(v32KI;ET_<=IL$>Ryp zgj1%i+p&Yf05U?9N!UX=4ULylVHj~eE;`raNB$MeM!mka>;+|=$X|h9VNJ^PTqW$X z@wT@8ZrYqyA8M-O)aT#)QK1Kg zi=@j^&zI1bdYQ=cC!R?Dr}X6_?|bV0M9_1VbUNxRP+h_U{UnZ~K^Za!QRx)%d{nGx z8>rD;@-`BB5Ra$R!q|uMcDRC|X9A%Tb@ZgCP2$B@5|kd`o&c6X_>jrc(7bXNyFy@{8%1BOth z=M7f3dBZ6`Ox(SgKVnU}V*{Cb#*){S%KoJFtHNvBK_+ZR**a6r^JgRK)F*Zxn=rX$ zwvQIX^>{Jq^|T2kY%y7mbGFVGAHJ*iZNV1Xs38@m+d(f`chSKa>OG=P81bysSwdNW z-8I{V<7>({QQnq}4AcoE{_%5wyxQcA^W<~Y7ZAxnM-`|Qi!bbe4L@pl%*LZX$~#W{ z2%QbGlhz>FlUGN7<4n94lQ&;NTxhH-ZdhFF(6~5Pc!aBOOzgl=S6oEDgxJvJph2Ie zPCgS~$U8an@W-i=v$}g{NnA8FZ!YRZ#Kp%ZgvC=!tp=PO53J;BsiE~9nyCMd-LSw@|jT{`~Dqb|MMBn5$4fopKW zfar+W&^`kqT%q(EANpBBgsWwT=FMFp!{Q@c#p`!$SSGk!xyog#1Xrw3B01zps86xz zh_DFO92w&ZW%{85B0pyXH2=`J2zA{+GYv|fe{z*GV_0m2Eo5mBMSa`n( z%{DxS?V#nJtpg)s*_6-$5e&(M7`5DmZa&Eiubobp9QB~SGdcO;FR2pGK7G(2)YUg3 zIxKQeaCBY0!{yAERHMB!ZQ2i4CL(2* z%eggUQmr7TUsBd8&a6q%!Oo0H&C5G8BsC3mW=vTa7VqjgwuC;Jz*DMLFuBfRr+OG5j6v`^77@vi6y zP9r=h)4`)*P-p=%8LkA5S5E&L4@42?NNs!BKad^y-Xid!(8Se`17aAEIl)``g z{DU)PU8p+f5$5zwsT1ZL=PXh`G+G1njf@U=#fCQE+0y#9jffi*6CD?kaw^X0>rA;8?+i+n)PJb+d0pKjO{cUgR2NArq?@pqgaP5M t_|T{b*RYs`SY8csqT^k>ZG-qQ42g+lU|p!7lvcx>m(r*Bk98Jt{vW-9($)X~ diff --git a/app/locales/en_GB/LC_MESSAGES/messages.po b/app/locales/en_GB/LC_MESSAGES/messages.po index 2565765d..591078a8 100644 --- a/app/locales/en_GB/LC_MESSAGES/messages.po +++ b/app/locales/en_GB/LC_MESSAGES/messages.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: sysPass\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-02 00:43+0100\n" -"PO-Revision-Date: 2018-08-02 00:47+0100\n" +"POT-Creation-Date: 2018-08-28 00:33+0100\n" +"PO-Revision-Date: 2018-08-28 00:33+0100\n" "Last-Translator: nuxsmin \n" "Language-Team: nuxsmin@syspass.org\n" "Language: en_GB\n" @@ -25,13 +25,12 @@ msgstr "" "X-Poedit-SearchPath-1: ../../../../lib\n" "X-Poedit-SearchPath-2: ../../../config\n" -#: ../../../../lib/SP/Bootstrap.php:262 +#: ../../../../lib/SP/Bootstrap.php:265 #, php-format msgid "Versión de PHP requerida >= %s <= %s" msgstr "Required PHP version >= %s <= %s" -#: ../../../../lib/SP/Bootstrap.php:264 -#: ../../../modules/web/Controllers/InstallController.php:63 +#: ../../../../lib/SP/Bootstrap.php:267 msgid "" "Actualice la versión de PHP para que la aplicación funcione correctamente" msgstr "Please update the PHP version to run sysPass" @@ -84,32 +83,32 @@ msgid "Acceso denegado" msgstr "Access denied" #: ../../../../lib/SP/Core/Acl/Acl.php:281 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:882 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:106 #: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:31 #: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:33 msgid "Acción" msgstr "Action" #: ../../../../lib/SP/Core/Acl/Acl.php:282 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:406 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:410 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:165 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:114 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:126 -#: ../../../../lib/SP/Services/Auth/LoginService.php:212 -#: ../../../../lib/SP/Services/Auth/LoginService.php:230 +#: ../../../../lib/SP/Services/Auth/LoginService.php:211 +#: ../../../../lib/SP/Services/Auth/LoginService.php:229 #: ../../../../lib/SP/Services/Auth/LoginService.php:368 #: ../../../../lib/SP/Services/Auth/LoginService.php:435 #: ../../../../lib/SP/Services/Auth/LoginService.php:543 #: ../../../../lib/SP/Services/Auth/LoginService.php:586 #: ../../../../lib/SP/Services/Ldap/LdapImportService.php:230 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:235 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:881 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:978 -#: ../../../modules/web/Controllers/LoginController.php:105 -#: ../../../modules/web/Controllers/UserController.php:280 -#: ../../../modules/web/Controllers/UserController.php:314 -#: ../../../modules/web/Controllers/UserController.php:375 -#: ../../../modules/web/Controllers/UserController.php:412 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:109 +#: ../../../modules/web/Controllers/LoginController.php:102 +#: ../../../modules/web/Controllers/UserController.php:278 +#: ../../../modules/web/Controllers/UserController.php:312 +#: ../../../modules/web/Controllers/UserController.php:372 +#: ../../../modules/web/Controllers/UserController.php:411 #: ../../../modules/web/Controllers/UserPassResetController.php:187 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:55 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:61 @@ -120,7 +119,7 @@ msgstr "Action" #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:63 #: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:20 #: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:65 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:50 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:52 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:129 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:104 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:111 @@ -140,7 +139,7 @@ msgstr "Action" msgid "Usuario" msgstr "User" -#: ../../../../lib/SP/Core/Acl/Actions.php:174 +#: ../../../../lib/SP/Core/Acl/Actions.php:176 msgid "Acción no encontrada" msgstr "Action not found" @@ -187,18 +186,18 @@ msgstr "The key file does not exist" #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:333 #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:388 #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:416 -#: ../../../../lib/SP/Services/Account/AccountService.php:231 -#: ../../../../lib/SP/Services/Account/AccountService.php:236 -#: ../../../../lib/SP/Services/Api/ApiService.php:126 -#: ../../../../lib/SP/Services/Api/ApiService.php:326 -#: ../../../../lib/SP/Services/Api/ApiService.php:334 -#: ../../../../lib/SP/Services/Auth/LoginService.php:183 -#: ../../../../lib/SP/Services/Auth/LoginService.php:334 +#: ../../../../lib/SP/Services/Account/AccountService.php:232 +#: ../../../../lib/SP/Services/Account/AccountService.php:237 +#: ../../../../lib/SP/Services/Api/ApiService.php:129 +#: ../../../../lib/SP/Services/Api/ApiService.php:227 +#: ../../../../lib/SP/Services/Api/ApiService.php:235 +#: ../../../../lib/SP/Services/Auth/LoginService.php:182 +#: ../../../../lib/SP/Services/Auth/LoginService.php:333 #: ../../../../lib/SP/Services/Auth/LoginService.php:482 #: ../../../../lib/SP/Services/Auth/LoginService.php:487 #: ../../../../lib/SP/Services/Auth/LoginService.php:519 #: ../../../../lib/SP/Services/Auth/LoginService.php:626 -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:292 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:306 #: ../../../../lib/SP/Services/CustomField/CustomFieldService.php:203 #: ../../../../lib/SP/Services/Export/XmlVerifyService.php:108 #: ../../../../lib/SP/Services/Import/XmlFileImport.php:79 @@ -224,17 +223,17 @@ msgstr "An object is needed" msgid "Observador no inicializado" msgstr "Observer not initialized" -#: ../../../../lib/SP/Core/UI/Theme.php:181 +#: ../../../../lib/SP/Core/UI/Theme.php:191 msgid "Clase no válida para iconos" msgstr "Invalid icons class" #: ../../../../lib/SP/DataModel/PublicLinkListData.php:88 -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "ON" msgstr "ON" #: ../../../../lib/SP/DataModel/PublicLinkListData.php:88 -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "OFF" msgstr "OFF" @@ -251,15 +250,19 @@ msgstr "Invalid IP" msgid "No es posible obtener la plantilla \"%s\" : %s" msgstr "Unable to retrieve the \"%s\" template: %s" +#: ../../../../lib/SP/Http/Json.php:179 +msgid "Error de codificación" +msgstr "Encoding error" + #: ../../../../lib/SP/Http/XMLRPCResponseParse.php:69 msgid "Respuesta XML-RPC inválida" msgstr "Invalid XML-RPC response" -#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:65 +#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:64 msgid "La sesión no se ha iniciado o ha caducado" msgstr "Session not started or timed out" -#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:115 +#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:114 msgid "Acción Inválida" msgstr "Invalid Action" @@ -302,25 +305,25 @@ msgstr "New Plugin" #: ../../../../lib/SP/Plugin/PluginManager.php:246 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:221 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:76 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:179 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:263 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:351 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:437 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:496 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:573 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:701 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:792 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1074 -#: ../../../modules/web/Controllers/UserGroupController.php:255 -#: ../../../modules/web/Controllers/UserGroupController.php:295 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:100 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:114 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:105 +#: ../../../modules/web/Controllers/UserGroupController.php:254 +#: ../../../modules/web/Controllers/UserGroupController.php:293 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:22 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:33 #: ../../../modules/web/themes/material-blue/views/account/account-link.inc:15 #: ../../../modules/web/themes/material-blue/views/account/account-request.inc:18 #: ../../../modules/web/themes/material-blue/views/account/account.inc:59 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:43 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:28 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:30 #: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:17 #: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:20 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:20 @@ -355,8 +358,8 @@ msgstr "Unable to connect to the LDAP server" #: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:163 #: ../../../modules/web/themes/material-blue/views/config/general-events.inc:68 #: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:37 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:62 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:65 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:64 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:67 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:74 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:99 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:57 @@ -374,26 +377,26 @@ msgstr "The LDAP parameters are not set" msgid "Error al conectar (BIND)" msgstr "Connection error (BIND)" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:405 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:411 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:409 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:416 msgid "Error al localizar el usuario en LDAP" msgstr "Error while searching the user on LDAP" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:481 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:487 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:493 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:500 msgid "Error al buscar RDN de grupo" msgstr "Error while searching the group RDN" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:482 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:494 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:140 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:154 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:166 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:115 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:127 #: ../../../../lib/SP/Services/Ldap/LdapImportService.php:137 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:576 -#: ../../../modules/web/Controllers/UserGroupController.php:221 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:135 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:117 +#: ../../../modules/web/Controllers/UserGroupController.php:220 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:137 #: ../../../modules/web/themes/material-blue/views/_partials/footer.inc:15 #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:269 #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:272 @@ -404,8 +407,8 @@ msgstr "Error while searching the group RDN" msgid "Grupo" msgstr "Group" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:546 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:551 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:543 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:548 msgid "Error al buscar objetos en DN base" msgstr "Error while searching objects in base DN" @@ -427,12 +430,12 @@ msgstr "Error while searching users group" msgid "Usuario no pertenece al grupo" msgstr "The user doesn't belong to the group" -#: ../../../../lib/SP/Providers/Mail/MailHandler.php:95 +#: ../../../../lib/SP/Providers/Mail/MailHandler.php:87 #, php-format msgid "Realizado por: %s (%s)" msgstr "Performed by: %s (%s)" -#: ../../../../lib/SP/Providers/Mail/MailHandler.php:96 +#: ../../../../lib/SP/Providers/Mail/MailHandler.php:88 #, php-format msgid "Dirección IP: %s" msgstr "IP Address: %s" @@ -441,27 +444,27 @@ msgstr "IP Address: %s" msgid "No es posible inicializar" msgstr "Unable to initialize" -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:92 -#: ../../../modules/web/Controllers/AccountController.php:901 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:124 +#: ../../../modules/web/Controllers/AccountController.php:897 msgid "Solicitud" msgstr "Request" #. (itstool) path: action/text -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:93 -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:124 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:125 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:156 #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:74 -#: ../../../modules/web/Controllers/ConfigBackupController.php:122 +#: ../../../modules/web/Controllers/ConfigBackupController.php:120 #: ../../../modules/web/Controllers/ConfigManagerController.php:167 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:456 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:88 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:21 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:390 #: ../../../config/actions.xml:13 msgid "Cuentas" msgstr "Accounts" -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:123 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:155 #: ../../../modules/web/Controllers/NotificationController.php:267 -#: ../../../modules/web/Controllers/NotificationController.php:297 +#: ../../../modules/web/Controllers/NotificationController.php:298 msgid "Notificación" msgstr "Notification" @@ -482,39 +485,39 @@ msgid "Error al actualizar el historial" msgstr "Error while updating history" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:162 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:327 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:323 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:192 msgid "Error al eliminar la cuenta" msgstr "Error while deleting the account" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:292 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:459 -#: ../../../../lib/SP/Services/Account/AccountService.php:448 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:455 +#: ../../../../lib/SP/Services/Account/AccountService.php:480 msgid "Error al eliminar las cuentas" msgstr "Error while deleting the accounts" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:413 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:239 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:264 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:235 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:260 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:219 msgid "Error al actualizar la clave" msgstr "Error while updating the password" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:204 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:200 msgid "Error al crear la cuenta" msgstr "Error while creating the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:307 -#: ../../../../lib/SP/Services/Account/AccountService.php:416 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:303 +#: ../../../../lib/SP/Services/Account/AccountService.php:445 msgid "Error al restaurar cuenta" msgstr "Error on restoring the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:389 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:385 msgid "Error al modificar la cuenta" msgstr "Error while updating the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:409 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:575 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:405 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:571 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:75 msgid "No se pudieron obtener los datos de la cuenta" msgstr "Error while retrieving the account data" @@ -918,32 +921,32 @@ msgstr "Update Master Password (H)" msgid "Errores al actualizar las claves de las cuentas del histórico" msgstr "Error while updating the accounts' passwords in history" -#: ../../../../lib/SP/Services/Account/AccountFileService.php:137 +#: ../../../../lib/SP/Services/Account/AccountFileService.php:145 msgid "Error al eliminar archivos" msgstr "Error while deleting the files" -#: ../../../../lib/SP/Services/Account/AccountFileService.php:156 +#: ../../../../lib/SP/Services/Account/AccountFileService.php:164 msgid "Archivo no encontrado" msgstr "File not found" -#: ../../../../lib/SP/Services/Account/AccountService.php:87 -#: ../../../../lib/SP/Services/Account/AccountService.php:504 -#: ../../../../lib/SP/Services/Account/AccountService.php:559 +#: ../../../../lib/SP/Services/Account/AccountService.php:88 +#: ../../../../lib/SP/Services/Account/AccountService.php:536 +#: ../../../../lib/SP/Services/Account/AccountService.php:591 msgid "La cuenta no existe" msgstr "The account doesn't exist" -#: ../../../../lib/SP/Services/Account/AccountService.php:174 -#: ../../../../lib/SP/Services/Account/AccountService.php:432 +#: ../../../../lib/SP/Services/Account/AccountService.php:175 +#: ../../../../lib/SP/Services/Account/AccountService.php:462 msgid "Cuenta no encontrada" msgstr "Account not found" -#: ../../../../lib/SP/Services/Account/AccountService.php:224 +#: ../../../../lib/SP/Services/Account/AccountService.php:225 msgid "Clave maestra no establecida" msgstr "Master password not set" #: ../../../../lib/SP/Services/Api/ApiRequest.php:79 #: ../../../../lib/SP/Services/Api/ApiRequest.php:113 -#: ../../../../lib/SP/Services/Api/ApiService.php:328 +#: ../../../../lib/SP/Services/Api/ApiService.php:229 msgid "Datos inválidos" msgstr "Invalid data" @@ -951,194 +954,23 @@ msgstr "Invalid data" msgid "Fomato incorrecto" msgstr "Invalid format" -#: ../../../../lib/SP/Services/Api/ApiService.php:91 -#: ../../../../lib/SP/Services/Auth/LoginService.php:133 +#: ../../../../lib/SP/Services/Api/ApiService.php:96 +#: ../../../../lib/SP/Services/Auth/LoginService.php:132 #: ../../../../lib/SP/Services/UserPassRecover/UserPassRecoverService.php:103 #: ../../../modules/web/Controllers/UserPassResetController.php:124 msgid "Intentos excedidos" msgstr "Attempts exceeded" -#: ../../../../lib/SP/Services/Api/ApiService.php:149 +#: ../../../../lib/SP/Services/Api/ApiService.php:152 msgid "Parámetros incorrectos" msgstr "Wrong parameters" -#: ../../../../lib/SP/Services/Api/ApiService.php:181 -#: ../../../../lib/SP/Services/Api/ApiService.php:196 -#: ../../../../lib/SP/Services/Api/ApiService.php:201 -msgid "Id de la cuenta" -msgstr "Account Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:182 -#: ../../../../lib/SP/Services/Api/ApiService.php:206 -msgid "Clave del token" -msgstr "Token's password" - -#: ../../../../lib/SP/Services/Api/ApiService.php:183 -msgid "Devolver detalles en la respuesta" -msgstr "Send details in the response" - -#: ../../../../lib/SP/Services/Api/ApiService.php:188 -#: ../../../../lib/SP/Services/Api/ApiService.php:225 -#: ../../../../lib/SP/Services/Api/ApiService.php:242 -#: ../../../../lib/SP/Services/Api/ApiService.php:260 -#: ../../../modules/web/themes/material-blue/views/account/search-searchbox.inc:16 -msgid "Texto a buscar" -msgstr "Text to search" - -#: ../../../../lib/SP/Services/Api/ApiService.php:189 -#: ../../../../lib/SP/Services/Api/ApiService.php:226 -#: ../../../../lib/SP/Services/Api/ApiService.php:243 -#: ../../../../lib/SP/Services/Api/ApiService.php:261 -msgid "Número de resultados a mostrar" -msgstr "Number of results to show" - -#: ../../../../lib/SP/Services/Api/ApiService.php:190 -msgid "Id de categoría a filtrar" -msgstr "Category Id to filter on" - -#: ../../../../lib/SP/Services/Api/ApiService.php:191 -msgid "Id de cliente a filtrar" -msgstr "Client Id to filter on" - -#: ../../../../lib/SP/Services/Api/ApiService.php:207 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:28 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:42 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:22 -#: ../../../modules/web/themes/material-blue/views/account/account-request.inc:24 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:67 -msgid "Nombre de cuenta" -msgstr "Account name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:208 -#: ../../../../lib/SP/Services/Api/ApiService.php:237 -msgid "Id de categoría" -msgstr "Category Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:209 -#: ../../../../lib/SP/Services/Api/ApiService.php:255 -msgid "Id de cliente" -msgstr "Client Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:210 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:66 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:72 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:83 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:82 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:85 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:93 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:147 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:155 -#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:31 -#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:288 -#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:291 -#: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:79 -#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:150 -#: ../../../modules/web/themes/material-blue/views/config/mail.inc:117 -#: ../../../modules/web/themes/material-blue/views/config/mail.inc:124 -#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:250 -#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:257 -#: ../../../modules/web/themes/material-blue/views/install/index.inc:42 -#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:47 -#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:54 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:94 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:102 -#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:38 -#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:45 -#: ../../../modules/web/themes/material-blue/views/login/index.inc:26 -#: ../../../modules/web/themes/material-blue/views/login/index.inc:88 -#: ../../../modules/web/themes/material-blue/views/userpassreset/reset.inc:20 -msgid "Clave" -msgstr "Password" - -#: ../../../../lib/SP/Services/Api/ApiService.php:211 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:99 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:141 -msgid "Usuario de acceso" -msgstr "Access user" - -#: ../../../../lib/SP/Services/Api/ApiService.php:212 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:86 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:128 -msgid "URL o IP de acceso" -msgstr "Access URL or IP" - -#: ../../../../lib/SP/Services/Api/ApiService.php:213 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:124 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:78 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:199 -msgid "Notas sobre la cuenta" -msgstr "Notes about the account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:214 -#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:126 -#: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:106 -msgid "Cuenta Privada" -msgstr "Private Account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:215 -#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:139 -msgid "Cuenta Privada Grupo" -msgstr "Private Account for Group" - -#: ../../../../lib/SP/Services/Api/ApiService.php:216 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:89 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:104 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:173 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:129 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:131 -msgid "Fecha Caducidad Clave" -msgstr "Password Expiry Date" - -#: ../../../../lib/SP/Services/Api/ApiService.php:217 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:228 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:230 -#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:9 -msgid "Cuenta Vinculada" -msgstr "Linked Account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:231 -#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:24 -msgid "Nombre de la categoría" -msgstr "Category name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:232 -#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:36 -msgid "Descripción de la categoría" -msgstr "Category description" - -#: ../../../../lib/SP/Services/Api/ApiService.php:248 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:27 -msgid "Nombre del cliente" -msgstr "Client name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:249 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:40 -msgid "Descripción del cliente" -msgstr "Client description" - -#: ../../../../lib/SP/Services/Api/ApiService.php:250 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:181 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1377 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:63 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:92 -msgid "Global" -msgstr "Global" - -#: ../../../../lib/SP/Services/Api/ApiService.php:266 -#: ../../../modules/web/themes/material-blue/views/itemshow/tag.inc:24 -msgid "Nombre de la etiqueta" -msgstr "Tag name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:271 -msgid "Id de etiqueta" -msgstr "Tag Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:285 +#: ../../../../lib/SP/Services/Api/ApiService.php:186 #: ../../../modules/api/Controllers/ControllerBase.php:146 msgid "Acceso no permitido" msgstr "Unauthorized access" -#: ../../../../lib/SP/Services/Auth/LoginService.php:153 +#: ../../../../lib/SP/Services/Auth/LoginService.php:152 #: ../../../../lib/SP/Services/Auth/LoginService.php:438 #: ../../../../lib/SP/Services/Auth/LoginService.php:445 #: ../../../../lib/SP/Services/Auth/LoginService.php:553 @@ -1148,37 +980,37 @@ msgstr "Unauthorized access" msgid "Login incorrecto" msgstr "Wrong login" -#: ../../../../lib/SP/Services/Auth/LoginService.php:211 -#: ../../../../lib/SP/Services/Auth/LoginService.php:218 +#: ../../../../lib/SP/Services/Auth/LoginService.php:210 +#: ../../../../lib/SP/Services/Auth/LoginService.php:217 msgid "Usuario deshabilitado" msgstr "User disabled" -#: ../../../../lib/SP/Services/Auth/LoginService.php:263 +#: ../../../../lib/SP/Services/Auth/LoginService.php:262 msgid "Usando clave temporal" msgstr "Using temporary password" -#: ../../../../lib/SP/Services/Auth/LoginService.php:271 -#: ../../../../lib/SP/Services/Auth/LoginService.php:277 -#: ../../../../lib/SP/Services/Auth/LoginService.php:290 -#: ../../../../lib/SP/Services/Auth/LoginService.php:296 +#: ../../../../lib/SP/Services/Auth/LoginService.php:270 +#: ../../../../lib/SP/Services/Auth/LoginService.php:276 +#: ../../../../lib/SP/Services/Auth/LoginService.php:289 +#: ../../../../lib/SP/Services/Auth/LoginService.php:295 msgid "Clave maestra incorrecta" msgstr "Wrong master password" -#: ../../../../lib/SP/Services/Auth/LoginService.php:285 -#: ../../../../lib/SP/Services/Auth/LoginService.php:304 +#: ../../../../lib/SP/Services/Auth/LoginService.php:284 +#: ../../../../lib/SP/Services/Auth/LoginService.php:303 #: ../../../../lib/SP/Services/User/UpdatedMasterPassException.php:45 #: ../../../../lib/SP/Util/ErrorUtil.php:144 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:67 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:141 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:68 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:142 #: ../../../modules/web/Controllers/Helpers/Account/AccountPasswordHelper.php:96 msgid "Clave maestra actualizada" msgstr "Master password updated" -#: ../../../../lib/SP/Services/Auth/LoginService.php:310 +#: ../../../../lib/SP/Services/Auth/LoginService.php:309 msgid "Es necesaria su clave anterior" msgstr "Your previous password is needed" -#: ../../../../lib/SP/Services/Auth/LoginService.php:322 +#: ../../../../lib/SP/Services/Auth/LoginService.php:321 msgid "La clave maestra no ha sido guardada o es incorrecta" msgstr "The Master Password either is not saved or is wrong" @@ -1186,10 +1018,10 @@ msgstr "The Master Password either is not saved or is wrong" #: ../../../../lib/SP/Services/Auth/LoginService.php:496 #: ../../../../lib/SP/Services/Auth/LoginService.php:542 #: ../../../../lib/SP/Services/Auth/LoginService.php:585 -#: ../../../modules/web/Controllers/AccountFileController.php:225 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:265 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:352 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1360 +#: ../../../modules/web/Controllers/AccountFileController.php:233 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:119 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:32 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:34 #: ../../../modules/web/themes/material-blue/views/notification/notification.inc:16 @@ -1217,13 +1049,13 @@ msgstr "The user has no associated groups" msgid "Autentificación" msgstr "Authentication" -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:126 -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:258 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:134 #: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:272 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:286 msgid "Token no encontrado" msgstr "Token not found" -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:145 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:153 msgid "Error al eliminar tokens" msgstr "Error while removing the tokens" @@ -1240,9 +1072,9 @@ msgid "Error al realizar el backup" msgstr "Error while doing the backup" #: ../../../../lib/SP/Services/Backup/FileBackupService.php:116 -#: ../../../../lib/SP/Services/Export/XmlExportService.php:163 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:167 #: ../../../modules/web/Controllers/ConfigImportController.php:80 -#: ../../../modules/web/Controllers/ConfigImportController.php:82 +#: ../../../modules/web/Controllers/ConfigImportController.php:83 msgid "Revise el registro de eventos para más detalles" msgstr "Please check out the event log for more details" @@ -1372,21 +1204,21 @@ msgid "Errores al actualizar datos de campos personalizados" msgstr "Error while updating the custom fields data" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:75 -#: ../../../modules/web/Controllers/ConfigBackupController.php:124 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:93 +#: ../../../modules/web/Controllers/ConfigBackupController.php:122 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:91 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:294 msgid "Categorías" msgstr "Categories" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:76 -#: ../../../modules/web/Controllers/ConfigBackupController.php:123 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:200 +#: ../../../modules/web/Controllers/ConfigBackupController.php:121 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:90 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:326 msgid "Clientes" msgstr "Clients" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:77 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:599 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:102 #: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:13 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:46 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:48 @@ -1396,7 +1228,7 @@ msgid "Usuarios" msgstr "Users" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:78 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:718 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:93 #: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:51 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:262 msgid "Grupos" @@ -1414,34 +1246,34 @@ msgstr "Error while deleting the fields" msgid "Tipo de campo no encontrado" msgstr "Field type not found" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:112 -#: ../../../../lib/SP/Storage/File/FileCache.php:65 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:100 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:114 +#: ../../../../lib/SP/Storage/File/FileCache.php:74 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:116 #, php-format msgid "No es posible crear el directorio (%s)" msgstr "Unable to create the directory (%s)" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:161 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:165 msgid "Error al realizar la exportación" msgstr "Error while exporting" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:229 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:233 msgid "Exportando categorías" msgstr "Exporting categories" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:341 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:345 msgid "Exportando clientes" msgstr "Exporting clients" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:387 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:391 msgid "Exportando etiquetas" msgstr "Exporting tags" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:431 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:435 msgid "Exportando cuentas" msgstr "Exporting accounts" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:538 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:545 msgid "Error al crear el archivo XML" msgstr "Error while creating the XML file" @@ -1450,12 +1282,13 @@ msgstr "Error while creating the XML file" msgid "No es posible procesar el archivo XML" msgstr "Unable to process the XML file" -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:134 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:177 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:176 msgid "Fallo en la verificación del hash de integridad" msgstr "Error while checking integrity hash" -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:196 -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:226 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:194 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:224 #: ../../../../lib/SP/Services/Import/SyspassImport.php:124 #: ../../../../lib/SP/Services/Import/SyspassImport.php:148 msgid "Clave de encriptación incorrecta" @@ -1466,50 +1299,54 @@ msgstr "Wrong encryption password" msgid "Formato detectado: %s" msgstr "Detected format: %s" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:132 -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:178 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:130 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:176 #, php-format msgid "El número de campos es incorrecto (%d)" msgstr "Wrong number of fields (%d)" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:134 -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:180 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:132 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:178 #, php-format msgid "Compruebe el formato del archivo CSV en línea %s" msgstr "Please, check the CSV file format in line %s" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:160 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:158 #: ../../../../lib/SP/Services/Import/KeepassImport.php:103 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:371 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:387 msgid "Cuenta importada" msgstr "Account imported" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:161 -#: ../../../modules/api/Controllers/AccountController.php:65 -#: ../../../modules/api/Controllers/AccountController.php:96 -#: ../../../modules/api/Controllers/AccountController.php:143 -#: ../../../modules/api/Controllers/AccountController.php:195 -#: ../../../modules/api/Controllers/ClientController.php:86 -#: ../../../modules/api/Controllers/ClientController.php:116 -#: ../../../modules/api/Controllers/ClientController.php:144 -#: ../../../modules/web/Controllers/AccountController.php:223 -#: ../../../modules/web/Controllers/AccountController.php:690 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:159 +#: ../../../modules/api/Controllers/AccountController.php:67 +#: ../../../modules/api/Controllers/AccountController.php:99 +#: ../../../modules/api/Controllers/AccountController.php:133 +#: ../../../modules/api/Controllers/AccountController.php:180 +#: ../../../modules/api/Controllers/AccountController.php:229 +#: ../../../modules/api/Controllers/AccountController.php:302 +#: ../../../modules/api/Controllers/ClientController.php:64 +#: ../../../modules/api/Controllers/ClientController.php:94 +#: ../../../modules/api/Controllers/ClientController.php:125 +#: ../../../modules/api/Controllers/ClientController.php:154 +#: ../../../modules/web/Controllers/AccountController.php:222 +#: ../../../modules/web/Controllers/AccountController.php:691 #: ../../../modules/web/Controllers/AccountController.php:736 -#: ../../../modules/web/Controllers/AccountController.php:778 -#: ../../../modules/web/Controllers/AccountController.php:818 -#: ../../../modules/web/Controllers/AccountController.php:868 -#: ../../../modules/web/Controllers/AccountController.php:904 -#: ../../../modules/web/Controllers/AccountFileController.php:224 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:107 -#: ../../../modules/web/Controllers/AccountManagerController.php:111 -#: ../../../modules/web/Controllers/ClientController.php:214 -#: ../../../modules/web/Controllers/ClientController.php:247 +#: ../../../modules/web/Controllers/AccountController.php:777 +#: ../../../modules/web/Controllers/AccountController.php:816 +#: ../../../modules/web/Controllers/AccountController.php:866 +#: ../../../modules/web/Controllers/AccountController.php:900 +#: ../../../modules/web/Controllers/AccountFileController.php:232 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:112 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:147 +#: ../../../modules/web/Controllers/AccountManagerController.php:115 +#: ../../../modules/web/Controllers/ClientController.php:213 +#: ../../../modules/web/Controllers/ClientController.php:245 #: ../../../modules/web/Controllers/ClientController.php:281 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:214 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:350 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:438 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:497 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:975 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:106 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:33 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:39 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:47 @@ -1524,11 +1361,11 @@ msgstr "Account imported" msgid "Cliente" msgstr "Client" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:168 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:166 msgid "Error importando cuenta" msgstr "Error while importing the account" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:169 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:167 msgid "Error procesando línea" msgstr "Error while processing line" @@ -1543,7 +1380,7 @@ msgid "Verifique los permisos del usuario del servidor web" msgstr "Please check the web server user permissions" #: ../../../../lib/SP/Services/Import/FileImport.php:100 -#: ../../../modules/web/Controllers/AccountFileController.php:173 +#: ../../../modules/web/Controllers/AccountFileController.php:181 msgid "Tipo de archivo no soportado" msgstr "File type not allowed" @@ -1552,8 +1389,8 @@ msgid "Compruebe la extensión del archivo" msgstr "Please, check the file extension" #: ../../../../lib/SP/Services/Import/FileImport.php:116 -#: ../../../modules/web/Controllers/AccountFileController.php:188 -#: ../../../modules/web/Controllers/AccountFileController.php:209 +#: ../../../modules/web/Controllers/AccountFileController.php:196 +#: ../../../modules/web/Controllers/AccountFileController.php:217 msgid "Error interno al leer el archivo" msgstr "Internal error while reading the file" @@ -1561,12 +1398,12 @@ msgstr "Internal error while reading the file" msgid "Compruebe la configuración de PHP para subir archivos" msgstr "Please, check PHP configuration for upload files" -#: ../../../../lib/SP/Services/Import/ImportService.php:88 +#: ../../../../lib/SP/Services/Import/ImportService.php:89 #, php-format msgid "Tipo mime no soportado (\"%s\")" msgstr "Mime type not supported (\"%s\")" -#: ../../../../lib/SP/Services/Import/ImportService.php:90 +#: ../../../../lib/SP/Services/Import/ImportService.php:91 msgid "Compruebe el formato del archivo" msgstr "Please, check the file format" @@ -1583,28 +1420,29 @@ msgid "Importación XML KeePass" msgstr "KeePass XML Import" #: ../../../../lib/SP/Services/Import/KeepassImport.php:77 -#: ../../../modules/api/Controllers/ClientController.php:85 -#: ../../../modules/api/Controllers/ClientController.php:89 -#: ../../../modules/web/Controllers/ClientController.php:246 -#: ../../../modules/web/Controllers/ClientController.php:250 +#: ../../../modules/api/Controllers/ClientController.php:93 +#: ../../../modules/api/Controllers/ClientController.php:98 +#: ../../../modules/web/Controllers/ClientController.php:244 +#: ../../../modules/web/Controllers/ClientController.php:248 msgid "Cliente creado" msgstr "Client added" #: ../../../../lib/SP/Services/Import/KeepassImport.php:91 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:195 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:211 msgid "Categoría importada" msgstr "Category imported" #: ../../../../lib/SP/Services/Import/KeepassImport.php:104 -#: ../../../modules/api/Controllers/CategoryController.php:88 -#: ../../../modules/api/Controllers/CategoryController.php:117 -#: ../../../modules/api/Controllers/CategoryController.php:145 +#: ../../../modules/api/Controllers/CategoryController.php:63 +#: ../../../modules/api/Controllers/CategoryController.php:91 +#: ../../../modules/api/Controllers/CategoryController.php:121 +#: ../../../modules/api/Controllers/CategoryController.php:150 #: ../../../modules/web/Controllers/CategoryController.php:215 -#: ../../../modules/web/Controllers/CategoryController.php:253 -#: ../../../modules/web/Controllers/CategoryController.php:295 +#: ../../../modules/web/Controllers/CategoryController.php:249 +#: ../../../modules/web/Controllers/CategoryController.php:289 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:228 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:439 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:498 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:104 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:62 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:64 #: ../../../modules/web/themes/material-blue/views/account/account-link.inc:38 @@ -1627,12 +1465,20 @@ msgstr "Encryption password not set" msgid "Datos desencriptados" msgstr "Data unencrypted" -#: ../../../../lib/SP/Services/Import/SyspassImport.php:234 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:274 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:177 +msgid "" +"Si está importando un archivo exportado desde el mismo origen, los datos " +"pueden estar comprometidos." +msgstr "" +"If you are importing an exported file from the same origin, the data could " +"be compromised." + +#: ../../../../lib/SP/Services/Import/SyspassImport.php:250 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:290 msgid "Cliente importado" msgstr "Client imported" -#: ../../../../lib/SP/Services/Import/SyspassImport.php:310 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:326 msgid "Etiqueta importada" msgstr "Tag imported" @@ -1644,11 +1490,11 @@ msgstr "XML file not supported" msgid "No es posible detectar la aplicación que exportó los datos" msgstr "Unable to detect the application the data was exported from" -#: ../../../../lib/SP/Services/Import/XmlImport.php:98 +#: ../../../../lib/SP/Services/Import/XmlImport.php:99 msgid "Formato no detectado" msgstr "Format not detected" -#: ../../../../lib/SP/Services/Import/XmlImport.php:106 +#: ../../../../lib/SP/Services/Import/XmlImport.php:107 msgid "Not implemented" msgstr "Not implemented" @@ -1668,88 +1514,88 @@ msgstr "Invalid XML format" msgid "El nodo \"%s\" no existe" msgstr "The \"%s\" node doesn't exist" -#: ../../../../lib/SP/Services/Install/Installer.php:103 +#: ../../../../lib/SP/Services/Install/Installer.php:106 msgid "Indicar nombre de usuario admin" msgstr "Please, enter the admin username" -#: ../../../../lib/SP/Services/Install/Installer.php:105 +#: ../../../../lib/SP/Services/Install/Installer.php:108 msgid "Usuario admin para acceso a la aplicación" msgstr "Admin user to log into the application" -#: ../../../../lib/SP/Services/Install/Installer.php:110 +#: ../../../../lib/SP/Services/Install/Installer.php:113 msgid "Indicar la clave de admin" msgstr "Please, enter the admin's password" -#: ../../../../lib/SP/Services/Install/Installer.php:112 +#: ../../../../lib/SP/Services/Install/Installer.php:115 msgid "Clave del usuario admin de la aplicación" msgstr "Application administrator's password" -#: ../../../../lib/SP/Services/Install/Installer.php:117 +#: ../../../../lib/SP/Services/Install/Installer.php:120 msgid "Indicar la clave maestra" msgstr "Please, enter the Master Password" -#: ../../../../lib/SP/Services/Install/Installer.php:119 +#: ../../../../lib/SP/Services/Install/Installer.php:122 msgid "Clave maestra para encriptar las claves" msgstr "Master password to encrypt the passwords" -#: ../../../../lib/SP/Services/Install/Installer.php:124 +#: ../../../../lib/SP/Services/Install/Installer.php:127 msgid "Clave maestra muy corta" msgstr "Master password too short" -#: ../../../../lib/SP/Services/Install/Installer.php:126 +#: ../../../../lib/SP/Services/Install/Installer.php:129 msgid "La longitud de la clave maestra ha de ser mayor de 11 caracteres" msgstr "The Master Password length need to be at least 11 characters" -#: ../../../../lib/SP/Services/Install/Installer.php:131 +#: ../../../../lib/SP/Services/Install/Installer.php:134 msgid "Indicar el usuario de la BBDD" msgstr "Please, enter the database user" -#: ../../../../lib/SP/Services/Install/Installer.php:133 +#: ../../../../lib/SP/Services/Install/Installer.php:136 msgid "Usuario con permisos de administrador de la Base de Datos" msgstr "An user with database administrative rights" -#: ../../../../lib/SP/Services/Install/Installer.php:138 +#: ../../../../lib/SP/Services/Install/Installer.php:141 msgid "Indicar la clave de la BBDD" msgstr "Please, enter the database password" -#: ../../../../lib/SP/Services/Install/Installer.php:140 +#: ../../../../lib/SP/Services/Install/Installer.php:143 msgid "Clave del usuario administrador de la Base de Datos" msgstr "Database administrator's password" -#: ../../../../lib/SP/Services/Install/Installer.php:145 +#: ../../../../lib/SP/Services/Install/Installer.php:148 msgid "Indicar el nombre de la BBDD" msgstr "Please, enter the database name" -#: ../../../../lib/SP/Services/Install/Installer.php:147 +#: ../../../../lib/SP/Services/Install/Installer.php:150 msgid "Nombre para la BBDD de la aplicación pej. syspass" msgstr "Application database name. eg. syspass" -#: ../../../../lib/SP/Services/Install/Installer.php:152 +#: ../../../../lib/SP/Services/Install/Installer.php:155 msgid "El nombre de la BBDD no puede contener \".\"" msgstr "Database name cannot contain \".\"" -#: ../../../../lib/SP/Services/Install/Installer.php:154 +#: ../../../../lib/SP/Services/Install/Installer.php:157 msgid "Elimine los puntos del nombre de la Base de Datos" msgstr "Please, remove dots in database name" -#: ../../../../lib/SP/Services/Install/Installer.php:159 +#: ../../../../lib/SP/Services/Install/Installer.php:162 msgid "Indicar el servidor de la BBDD" msgstr "Please, enter the database server" -#: ../../../../lib/SP/Services/Install/Installer.php:161 +#: ../../../../lib/SP/Services/Install/Installer.php:164 msgid "Servidor donde se instalará la Base de Datos" msgstr "Server where the database will be installed" -#: ../../../../lib/SP/Services/Install/Installer.php:314 -#: ../../../../lib/SP/Services/Install/Installer.php:365 +#: ../../../../lib/SP/Services/Install/Installer.php:318 +#: ../../../../lib/SP/Services/Install/Installer.php:369 msgid "Informe al desarrollador" msgstr "Warn to developer" -#: ../../../../lib/SP/Services/Install/Installer.php:355 +#: ../../../../lib/SP/Services/Install/Installer.php:359 msgid "Error al crear el usuario 'admin'" msgstr "Error while creating 'admin' user" -#: ../../../../lib/SP/Services/Install/MySQL.php:98 +#: ../../../../lib/SP/Services/Install/MySQL.php:99 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:97 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:117 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:164 @@ -1757,66 +1603,59 @@ msgstr "Error while creating 'admin' user" msgid "No es posible conectar con la BD" msgstr "Unable to connect to the DB" -#: ../../../../lib/SP/Services/Install/MySQL.php:134 +#: ../../../../lib/SP/Services/Install/MySQL.php:135 #, php-format msgid "No es posible comprobar el usuario de sysPass (%s)" msgstr "Unable to check the sysPass user (%s)" -#: ../../../../lib/SP/Services/Install/MySQL.php:136 +#: ../../../../lib/SP/Services/Install/MySQL.php:137 msgid "Compruebe los permisos del usuario de conexión a la BD" msgstr "Please, check the DB connection user rights" -#: ../../../../lib/SP/Services/Install/MySQL.php:180 +#: ../../../../lib/SP/Services/Install/MySQL.php:181 #, php-format msgid "Error al crear el usuario de conexión a MySQL '%s'" msgstr "Error while creating the MySQL connection user '%s'" -#: ../../../../lib/SP/Services/Install/MySQL.php:200 +#: ../../../../lib/SP/Services/Install/MySQL.php:201 msgid "La BBDD ya existe" msgstr "The database already exists" -#: ../../../../lib/SP/Services/Install/MySQL.php:202 +#: ../../../../lib/SP/Services/Install/MySQL.php:203 msgid "Indique una nueva Base de Datos o elimine la existente" msgstr "Please, enter a new database or delete the existing one" -#: ../../../../lib/SP/Services/Install/MySQL.php:212 -#: ../../../../lib/SP/Services/Install/MySQL.php:339 +#: ../../../../lib/SP/Services/Install/MySQL.php:213 +#: ../../../../lib/SP/Services/Install/MySQL.php:329 +#: ../../../../lib/SP/Services/Install/MySQL.php:341 #, php-format msgid "Error al crear la BBDD ('%s')" msgstr "Error while creating the DB ('%s')" -#: ../../../../lib/SP/Services/Install/MySQL.php:214 -#: ../../../../lib/SP/Services/Install/MySQL.php:238 +#: ../../../../lib/SP/Services/Install/MySQL.php:215 +#: ../../../../lib/SP/Services/Install/MySQL.php:239 msgid "Verifique los permisos del usuario de la Base de Datos" msgstr "Please check the database user permissions" -#: ../../../../lib/SP/Services/Install/MySQL.php:236 +#: ../../../../lib/SP/Services/Install/MySQL.php:237 #, php-format msgid "Error al establecer permisos de la BBDD ('%s')" msgstr "Error while setting the database permissions ('%s')" -#: ../../../../lib/SP/Services/Install/MySQL.php:250 +#: ../../../../lib/SP/Services/Install/MySQL.php:251 msgid "La BBDD no existe" msgstr "The database does not exist" -#: ../../../../lib/SP/Services/Install/MySQL.php:252 +#: ../../../../lib/SP/Services/Install/MySQL.php:253 msgid "Es necesario crearla y asignar los permisos necesarios" msgstr "You need to create it and assign the needed permissions" -#: ../../../../lib/SP/Services/Install/MySQL.php:305 -msgid "El archivo de estructura de la BBDD no existe" -msgstr "The database structure file does not exist" - -#: ../../../../lib/SP/Services/Install/MySQL.php:307 -msgid "No es posible crear la BBDD de la aplicación. Descárguela de nuevo." -msgstr "Unable to create the application database. Please download it again." - -#: ../../../../lib/SP/Services/Install/MySQL.php:318 +#: ../../../../lib/SP/Services/Install/MySQL.php:309 #, php-format msgid "Error al seleccionar la BBDD '%s' (%s)" msgstr "Error while selecting '%s' database (%s)" -#: ../../../../lib/SP/Services/Install/MySQL.php:320 +#: ../../../../lib/SP/Services/Install/MySQL.php:311 msgid "" "No es posible usar la Base de Datos para crear la estructura. Compruebe los " "permisos y que no exista." @@ -1824,15 +1663,15 @@ msgstr "" "Unable to use the database to create the structure. Check permissions and it " "does not exist." -#: ../../../../lib/SP/Services/Install/MySQL.php:341 +#: ../../../../lib/SP/Services/Install/MySQL.php:331 msgid "Error al crear la estructura de la Base de Datos." msgstr "Error while creating database structure." -#: ../../../../lib/SP/Services/Install/MySQL.php:360 +#: ../../../../lib/SP/Services/Install/MySQL.php:361 msgid "Error al comprobar la base de datos" msgstr "Error while checking the database" -#: ../../../../lib/SP/Services/Install/MySQL.php:362 +#: ../../../../lib/SP/Services/Install/MySQL.php:363 msgid "Intente de nuevo la instalación" msgstr "Please, try the installation again" @@ -1909,21 +1748,21 @@ msgstr "Link not found" msgid "Error al eliminar los enlaces" msgstr "Error while removing the links" -#: ../../../../lib/SP/Services/Service.php:113 +#: ../../../../lib/SP/Services/Service.php:109 msgid "Rollback" msgstr "Rollback" -#: ../../../../lib/SP/Services/Service.php:119 +#: ../../../../lib/SP/Services/Service.php:115 msgid "No es posible iniciar una transacción" msgstr "Unable to start a transaction" -#: ../../../../lib/SP/Services/Service.php:137 -#: ../../../../lib/SP/Services/Service.php:144 +#: ../../../../lib/SP/Services/Service.php:133 +#: ../../../../lib/SP/Services/Service.php:140 msgid "Error al obtener la clave maestra del contexto" msgstr "Error while retrieving master password from context" +#: ../../../../lib/SP/Services/Service.php:160 #: ../../../../lib/SP/Services/Service.php:164 -#: ../../../../lib/SP/Services/Service.php:168 msgid "Error ol establecer la clave maestra en el contexto" msgstr "Error while setting master password in context" @@ -1976,17 +1815,17 @@ msgid "Actualización de autorizaciones API" msgstr "API authorizations update" #: ../../../../lib/SP/Services/Upgrade/UpgradeAuthToken.php:70 -#: ../../../modules/web/Controllers/AuthTokenController.php:286 -#: ../../../modules/web/Controllers/AuthTokenController.php:295 -#: ../../../modules/web/Controllers/AuthTokenController.php:302 +#: ../../../modules/web/Controllers/AuthTokenController.php:283 +#: ../../../modules/web/Controllers/AuthTokenController.php:292 +#: ../../../modules/web/Controllers/AuthTokenController.php:299 msgid "Autorización actualizada" msgstr "Authorization updated" #: ../../../../lib/SP/Services/Upgrade/UpgradeAuthToken.php:71 -#: ../../../modules/web/Controllers/AuthTokenController.php:219 -#: ../../../modules/web/Controllers/AuthTokenController.php:287 -#: ../../../modules/web/Controllers/AuthTokenController.php:296 -#: ../../../modules/web/Controllers/AuthTokenController.php:334 +#: ../../../modules/web/Controllers/AuthTokenController.php:218 +#: ../../../modules/web/Controllers/AuthTokenController.php:284 +#: ../../../modules/web/Controllers/AuthTokenController.php:293 +#: ../../../modules/web/Controllers/AuthTokenController.php:331 msgid "Autorización" msgstr "Authorization" @@ -2002,9 +1841,9 @@ msgstr "Parameter" #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:113 #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:229 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:169 -#: ../../../modules/web/Controllers/ConfigBackupController.php:120 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:38 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:164 +#: ../../../modules/web/Controllers/ConfigBackupController.php:118 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:40 #: ../../../modules/web/themes/material-blue/views/itemshow/plugin.inc:25 msgid "Versión" msgstr "Version" @@ -2015,11 +1854,11 @@ msgid "Error al actualizar la configuración" msgstr "Error while updating the configuration" #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:122 -#: ../../../modules/web/Controllers/AccountFileController.php:81 -#: ../../../modules/web/Controllers/AccountFileController.php:94 -#: ../../../modules/web/Controllers/AccountFileController.php:132 -#: ../../../modules/web/Controllers/AccountFileController.php:222 -#: ../../../modules/web/Controllers/AccountFileController.php:315 +#: ../../../modules/web/Controllers/AccountFileController.php:83 +#: ../../../modules/web/Controllers/AccountFileController.php:96 +#: ../../../modules/web/Controllers/AccountFileController.php:136 +#: ../../../modules/web/Controllers/AccountFileController.php:230 +#: ../../../modules/web/Controllers/AccountFileController.php:327 #: ../../../modules/web/themes/material-blue/views/config/import.inc:70 msgid "Archivo" msgstr "File" @@ -2036,15 +1875,15 @@ msgstr "Custom fields update" #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldData.php:74 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:87 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:156 -#: ../../../modules/web/Controllers/CustomFieldController.php:270 -#: ../../../modules/web/Controllers/CustomFieldController.php:274 +#: ../../../modules/web/Controllers/CustomFieldController.php:271 +#: ../../../modules/web/Controllers/CustomFieldController.php:275 msgid "Campo actualizado" msgstr "Field updated" #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:88 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:157 -#: ../../../modules/web/Controllers/CustomFieldController.php:236 -#: ../../../modules/web/Controllers/CustomFieldController.php:271 +#: ../../../modules/web/Controllers/CustomFieldController.php:235 +#: ../../../modules/web/Controllers/CustomFieldController.php:272 msgid "Campo" msgstr "Field" @@ -2058,17 +1897,17 @@ msgid "Error al aplicar la actualización auxiliar" msgstr "Error while applying an auxiliary update" #: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:95 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:182 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:186 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:177 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:181 msgid "Error al aplicar la actualización de la Base de Datos" msgstr "Error while updating the database" #: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:155 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:159 -msgid "No es necesario actualizar la Base de Datos." -msgstr "Database update not needed." +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:157 +msgid "El archivo de actualización no contiene datos" +msgstr "The updating file does not contain data" -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:192 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:187 msgid "Actualización de la Base de Datos realizada correctamente." msgstr "Database updating was completed successfully." @@ -2078,19 +1917,19 @@ msgid "Actualización de enlaces públicos" msgstr "Public links update" #: ../../../../lib/SP/Services/Upgrade/UpgradePublicLink.php:89 -#: ../../../modules/web/Controllers/PublicLinkController.php:172 +#: ../../../modules/web/Controllers/PublicLinkController.php:170 msgid "Enlace actualizado" msgstr "Link updated" #: ../../../../lib/SP/Services/Upgrade/UpgradePublicLink.php:90 -#: ../../../modules/web/Controllers/PublicLinkController.php:244 +#: ../../../modules/web/Controllers/PublicLinkController.php:241 msgid "Enlace" msgstr "Link" #: ../../../../lib/SP/Services/User/UpdatedMasterPassException.php:45 #: ../../../../lib/SP/Util/ErrorUtil.php:145 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:67 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:141 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:68 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:142 #: ../../../modules/web/Controllers/Helpers/Account/AccountPasswordHelper.php:96 msgid "Reinicie la sesión para cambiarla" msgstr "Please, restart the session for update it" @@ -2118,8 +1957,8 @@ msgid "Error al eliminar los grupos" msgstr "Error while deleting the groups" #: ../../../../lib/SP/Services/UserPassRecover/UserPassRecoverService.php:65 -#: ../../../modules/web/Controllers/UserController.php:225 -#: ../../../modules/web/Controllers/UserController.php:344 +#: ../../../modules/web/Controllers/UserController.php:224 +#: ../../../modules/web/Controllers/UserController.php:342 #: ../../../modules/web/Controllers/UserPassResetController.php:105 #: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:232 msgid "Cambio de Clave" @@ -2165,96 +2004,69 @@ msgstr "Please, check the connection parameters" msgid "Error en la consulta" msgstr "Error while querying" -#: ../../../../lib/SP/Storage/File/FileCache.php:43 -#: ../../../../lib/SP/Storage/File/FileHandler.php:208 -#: ../../../../lib/SP/Storage/File/FileHandler.php:263 -#, php-format -msgid "No es posible leer el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:47 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:58 -#, php-format -msgid "Error al leer datos del archivo (%s)" -msgstr "Error while reading file data (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:69 -#: ../../../../lib/SP/Storage/File/FileCache.php:73 -#: ../../../../lib/SP/Storage/File/FileHandler.php:69 -#, php-format -msgid "No es posible escribir en el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:88 -#: ../../../../lib/SP/Storage/File/FileHandler.php:86 -#, php-format -msgid "No es posible abrir el archivo (%s)" -msgstr "Unable to open the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:92 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:128 -#, php-format -msgid "Error al eliminar el archivo (%s)" -msgstr "Error while deleting the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:54 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:104 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:124 -#, php-format -msgid "No es posible leer/escribir el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:62 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:57 #, php-format msgid "Error al descomprimir datos del archivo (%s)" msgstr "Error while decompressing the file data (%s)" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:66 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:61 msgid "Error al obtener los datos" msgstr "Error while retrieving the data" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:108 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:99 #, php-format msgid "Error al comprimir datos del archivo (%s)" msgstr "Error while compressing the file data (%s)" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:112 -#, php-format -msgid "Error al escribir datos en el archivo (%s)" -msgstr "Error while writing data to file (%s)" - #: ../../../../lib/SP/Storage/File/FileCachePacked.php:144 msgid "Datos no cargados" msgstr "Data not loaded" +#: ../../../../lib/SP/Storage/File/FileHandler.php:69 +#: ../../../../lib/SP/Storage/File/FileHandler.php:132 +#, php-format +msgid "No es posible escribir en el archivo (%s)" +msgstr "Unable to read/write the file (%s)" + +#: ../../../../lib/SP/Storage/File/FileHandler.php:86 +#, php-format +msgid "No es posible abrir el archivo (%s)" +msgstr "Unable to open the file (%s)" + #: ../../../../lib/SP/Storage/File/FileHandler.php:101 #: ../../../../lib/SP/Storage/File/FileHandler.php:115 #, php-format msgid "No es posible leer desde el archivo (%s)" msgstr "Unable to read from file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:153 +#: ../../../../lib/SP/Storage/File/FileHandler.php:170 #, php-format msgid "No es posible cerrar el archivo (%s)" msgstr "Unable to close the file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:168 +#: ../../../../lib/SP/Storage/File/FileHandler.php:185 #, php-format msgid "No es posible escribir el archivo (%s)" msgstr "Unable to write in file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:183 +#: ../../../../lib/SP/Storage/File/FileHandler.php:200 #, php-format msgid "Archivo no encontrado (%s)" msgstr "File not found (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:235 +#: ../../../../lib/SP/Storage/File/FileHandler.php:225 +#: ../../../../lib/SP/Storage/File/FileHandler.php:280 +#, php-format +msgid "No es posible leer el archivo (%s)" +msgstr "Unable to read/write the file (%s)" + +#: ../../../../lib/SP/Storage/File/FileHandler.php:252 #, php-format msgid "No es posible eliminar el archivo (%s)" msgstr "Unable to delete file (%s)" #: ../../../../lib/SP/Storage/File/XmlHandler.php:89 -#: ../../../../lib/SP/Storage/File/XmlHandler.php:310 +#: ../../../../lib/SP/Storage/File/XmlHandler.php:309 msgid "El nodo XML no existe" msgstr "The XML node does not exist" @@ -2262,11 +2074,11 @@ msgstr "The XML node does not exist" msgid "No hay elementos para guardar" msgstr "There aren't any items to save" -#: ../../../../lib/SP/Util/Connection.php:124 +#: ../../../../lib/SP/Util/Connection.php:157 msgid "Socket no inicializado" msgstr "Socket not initialized" -#: ../../../../lib/SP/Util/Connection.php:131 +#: ../../../../lib/SP/Util/Connection.php:164 msgid "Error al enviar datos" msgstr "Error while sending the data" @@ -2275,6 +2087,86 @@ msgid "Opción no disponible" msgstr "Option unavailable" #: ../../../../lib/SP/Util/ErrorUtil.php:140 +#: ../../../modules/web/Controllers/AccountFileController.php:259 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:59 +#: ../../../modules/web/Controllers/AccountManagerController.php:57 +#: ../../../modules/web/Controllers/AuthTokenController.php:65 +#: ../../../modules/web/Controllers/AuthTokenController.php:97 +#: ../../../modules/web/Controllers/AuthTokenController.php:162 +#: ../../../modules/web/Controllers/AuthTokenController.php:192 +#: ../../../modules/web/Controllers/AuthTokenController.php:235 +#: ../../../modules/web/Controllers/AuthTokenController.php:270 +#: ../../../modules/web/Controllers/AuthTokenController.php:319 +#: ../../../modules/web/Controllers/CategoryController.php:63 +#: ../../../modules/web/Controllers/CategoryController.php:95 +#: ../../../modules/web/Controllers/CategoryController.php:159 +#: ../../../modules/web/Controllers/CategoryController.php:189 +#: ../../../modules/web/Controllers/CategoryController.php:232 +#: ../../../modules/web/Controllers/CategoryController.php:272 +#: ../../../modules/web/Controllers/CategoryController.php:312 +#: ../../../modules/web/Controllers/ClientController.php:64 +#: ../../../modules/web/Controllers/ClientController.php:96 +#: ../../../modules/web/Controllers/ClientController.php:160 +#: ../../../modules/web/Controllers/ClientController.php:190 +#: ../../../modules/web/Controllers/ClientController.php:230 +#: ../../../modules/web/Controllers/ClientController.php:268 +#: ../../../modules/web/Controllers/ClientController.php:304 +#: ../../../modules/web/Controllers/CustomFieldController.php:65 +#: ../../../modules/web/Controllers/CustomFieldController.php:97 +#: ../../../modules/web/Controllers/CustomFieldController.php:159 +#: ../../../modules/web/Controllers/CustomFieldController.php:189 +#: ../../../modules/web/Controllers/CustomFieldController.php:221 +#: ../../../modules/web/Controllers/CustomFieldController.php:258 +#: ../../../modules/web/Controllers/CustomFieldController.php:295 +#: ../../../modules/web/Controllers/EventlogController.php:94 +#: ../../../modules/web/Controllers/NotificationController.php:100 +#: ../../../modules/web/Controllers/NotificationController.php:160 +#: ../../../modules/web/Controllers/NotificationController.php:175 +#: ../../../modules/web/Controllers/NotificationController.php:206 +#: ../../../modules/web/Controllers/NotificationController.php:237 +#: ../../../modules/web/Controllers/NotificationController.php:288 +#: ../../../modules/web/Controllers/NotificationController.php:315 +#: ../../../modules/web/Controllers/NotificationController.php:348 +#: ../../../modules/web/Controllers/PluginController.php:97 +#: ../../../modules/web/Controllers/PluginController.php:117 +#: ../../../modules/web/Controllers/PublicLinkController.php:68 +#: ../../../modules/web/Controllers/PublicLinkController.php:100 +#: ../../../modules/web/Controllers/PublicLinkController.php:162 +#: ../../../modules/web/Controllers/PublicLinkController.php:188 +#: ../../../modules/web/Controllers/PublicLinkController.php:218 +#: ../../../modules/web/Controllers/PublicLinkController.php:259 +#: ../../../modules/web/Controllers/PublicLinkController.php:291 +#: ../../../modules/web/Controllers/PublicLinkController.php:333 +#: ../../../modules/web/Controllers/TagController.php:62 +#: ../../../modules/web/Controllers/TagController.php:94 +#: ../../../modules/web/Controllers/TagController.php:154 +#: ../../../modules/web/Controllers/TagController.php:184 +#: ../../../modules/web/Controllers/TagController.php:218 +#: ../../../modules/web/Controllers/TagController.php:249 +#: ../../../modules/web/Controllers/TagController.php:280 +#: ../../../modules/web/Controllers/UserController.php:69 +#: ../../../modules/web/Controllers/UserController.php:101 +#: ../../../modules/web/Controllers/UserController.php:186 +#: ../../../modules/web/Controllers/UserController.php:218 +#: ../../../modules/web/Controllers/UserController.php:254 +#: ../../../modules/web/Controllers/UserController.php:296 +#: ../../../modules/web/Controllers/UserController.php:356 +#: ../../../modules/web/Controllers/UserController.php:397 +#: ../../../modules/web/Controllers/UserController.php:434 +#: ../../../modules/web/Controllers/UserGroupController.php:70 +#: ../../../modules/web/Controllers/UserGroupController.php:102 +#: ../../../modules/web/Controllers/UserGroupController.php:168 +#: ../../../modules/web/Controllers/UserGroupController.php:198 +#: ../../../modules/web/Controllers/UserGroupController.php:238 +#: ../../../modules/web/Controllers/UserGroupController.php:277 +#: ../../../modules/web/Controllers/UserGroupController.php:316 +#: ../../../modules/web/Controllers/UserProfileController.php:64 +#: ../../../modules/web/Controllers/UserProfileController.php:96 +#: ../../../modules/web/Controllers/UserProfileController.php:163 +#: ../../../modules/web/Controllers/UserProfileController.php:193 +#: ../../../modules/web/Controllers/UserProfileController.php:233 +#: ../../../modules/web/Controllers/UserProfileController.php:268 +#: ../../../modules/web/Controllers/UserProfileController.php:304 msgid "No tiene permisos para realizar esta operación" msgstr "You don't have permission to do this operation" @@ -2283,25 +2175,10 @@ msgstr "You don't have permission to do this operation" msgid "Se ha producido una excepción" msgstr "An exception occured" -#: ../../../../lib/SP/Util/ImageUtil.php:48 -#: ../../../../lib/SP/Util/ImageUtil.php:99 -#: ../../../../lib/SP/Util/Util.php:180 ../../../../lib/SP/Util/Util.php:182 -#, php-format -msgid "Extensión '%s' no cargada" -msgstr "Extension '%s' not loaded" - -#: ../../../../lib/SP/Util/ImageUtil.php:105 +#: ../../../../lib/SP/Util/ImageUtil.php:65 msgid "Imagen no válida" msgstr "Invalid image" -#: ../../../../lib/SP/Util/Json.php:73 -msgid "Error de codificación" -msgstr "Encoding error" - -#: ../../../../lib/SP/Util/Util.php:243 -msgid "Respuesta" -msgstr "Response" - #: ../../../../lib/SP/Util/Wiki/DokuWikiApi.php:70 msgid "Fallo de autentificación" msgstr "Authentication error" @@ -2314,30 +2191,33 @@ msgstr "Error while doing the query" msgid "URL de conexión no establecida" msgstr "Connection URL not set" -#: ../../../modules/api/Controllers/AccountController.php:63 +#: ../../../modules/api/Controllers/AccountController.php:65 msgid "Cuenta visualizada" msgstr "Account displayed" -#: ../../../modules/api/Controllers/AccountController.php:64 -#: ../../../modules/api/Controllers/AccountController.php:95 -#: ../../../modules/api/Controllers/AccountController.php:142 -#: ../../../modules/api/Controllers/AccountController.php:194 -#: ../../../modules/web/Controllers/AccountController.php:222 -#: ../../../modules/web/Controllers/AccountController.php:554 -#: ../../../modules/web/Controllers/AccountController.php:589 -#: ../../../modules/web/Controllers/AccountController.php:624 -#: ../../../modules/web/Controllers/AccountController.php:654 -#: ../../../modules/web/Controllers/AccountController.php:689 +#: ../../../modules/api/Controllers/AccountController.php:66 +#: ../../../modules/api/Controllers/AccountController.php:98 +#: ../../../modules/api/Controllers/AccountController.php:132 +#: ../../../modules/api/Controllers/AccountController.php:179 +#: ../../../modules/api/Controllers/AccountController.php:228 +#: ../../../modules/api/Controllers/AccountController.php:301 +#: ../../../modules/web/Controllers/AccountController.php:221 +#: ../../../modules/web/Controllers/AccountController.php:555 +#: ../../../modules/web/Controllers/AccountController.php:592 +#: ../../../modules/web/Controllers/AccountController.php:626 +#: ../../../modules/web/Controllers/AccountController.php:655 +#: ../../../modules/web/Controllers/AccountController.php:690 #: ../../../modules/web/Controllers/AccountController.php:735 -#: ../../../modules/web/Controllers/AccountController.php:777 -#: ../../../modules/web/Controllers/AccountController.php:817 -#: ../../../modules/web/Controllers/AccountController.php:867 -#: ../../../modules/web/Controllers/AccountController.php:903 -#: ../../../modules/web/Controllers/AccountFileController.php:223 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:106 -#: ../../../modules/web/Controllers/AccountManagerController.php:110 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:349 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:974 +#: ../../../modules/web/Controllers/AccountController.php:776 +#: ../../../modules/web/Controllers/AccountController.php:815 +#: ../../../modules/web/Controllers/AccountController.php:865 +#: ../../../modules/web/Controllers/AccountController.php:899 +#: ../../../modules/web/Controllers/AccountFileController.php:231 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:111 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:146 +#: ../../../modules/web/Controllers/AccountManagerController.php:114 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:105 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:15 #: ../../../modules/web/themes/material-blue/views/account/account.inc:24 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:17 @@ -2345,108 +2225,368 @@ msgstr "Account displayed" msgid "Cuenta" msgstr "Account" -#: ../../../modules/api/Controllers/AccountController.php:94 -#: ../../../modules/web/Controllers/AccountController.php:553 -#: ../../../modules/web/Controllers/AccountController.php:588 +#: ../../../modules/api/Controllers/AccountController.php:68 +#: ../../../modules/api/Controllers/AccountController.php:100 +#: ../../../modules/api/Controllers/AccountController.php:134 +#: ../../../modules/api/Controllers/AccountController.php:181 +#: ../../../modules/api/Controllers/AccountController.php:230 +#: ../../../modules/api/Controllers/AccountController.php:303 +#: ../../../modules/api/Controllers/CategoryController.php:92 +#: ../../../modules/api/Controllers/CategoryController.php:122 +#: ../../../modules/api/Controllers/CategoryController.php:151 +#: ../../../modules/api/Controllers/ClientController.php:65 +#: ../../../modules/api/Controllers/ClientController.php:95 +#: ../../../modules/api/Controllers/ClientController.php:126 +#: ../../../modules/api/Controllers/ClientController.php:155 +#: ../../../modules/api/Controllers/TagController.php:118 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:100 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:138 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:140 +msgid "ID" +msgstr "ID" + +#: ../../../modules/api/Controllers/AccountController.php:97 +#: ../../../modules/web/Controllers/AccountController.php:554 +#: ../../../modules/web/Controllers/AccountController.php:591 msgid "Clave visualizada" msgstr "Password viewed" -#: ../../../modules/api/Controllers/AccountController.php:141 -#: ../../../modules/api/Controllers/AccountController.php:146 -#: ../../../modules/web/Controllers/AccountController.php:688 -#: ../../../modules/web/Controllers/AccountController.php:699 +#: ../../../modules/api/Controllers/AccountController.php:131 +#: ../../../modules/api/Controllers/AccountController.php:137 +#: ../../../modules/web/Controllers/AccountController.php:775 +#: ../../../modules/web/Controllers/AccountController.php:786 +#: ../../../modules/web/Controllers/UserController.php:410 +#: ../../../modules/web/Controllers/UserController.php:414 +#: ../../../modules/web/Controllers/UserPassResetController.php:186 +#: ../../../modules/web/Controllers/UserPassResetController.php:190 +msgid "Clave actualizada" +msgstr "Password updated" + +#: ../../../modules/api/Controllers/AccountController.php:178 +#: ../../../modules/api/Controllers/AccountController.php:184 +#: ../../../modules/web/Controllers/AccountController.php:689 +#: ../../../modules/web/Controllers/AccountController.php:700 msgid "Cuenta creada" msgstr "Account added" -#: ../../../modules/api/Controllers/AccountController.php:193 -#: ../../../modules/api/Controllers/AccountController.php:198 -#: ../../../modules/web/Controllers/AccountController.php:866 -#: ../../../modules/web/Controllers/AccountController.php:871 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:105 +#: ../../../modules/api/Controllers/AccountController.php:227 +#: ../../../modules/api/Controllers/AccountController.php:233 +#: ../../../modules/web/Controllers/AccountController.php:734 +#: ../../../modules/web/Controllers/AccountController.php:745 +msgid "Cuenta actualizada" +msgstr "Account updated" + +#: ../../../modules/api/Controllers/AccountController.php:300 +#: ../../../modules/api/Controllers/AccountController.php:306 +#: ../../../modules/web/Controllers/AccountController.php:864 +#: ../../../modules/web/Controllers/AccountController.php:869 #: ../../../modules/web/Controllers/AccountHistoryManagerController.php:110 -#: ../../../modules/web/Controllers/AccountManagerController.php:109 -#: ../../../modules/web/Controllers/AccountManagerController.php:114 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:115 +#: ../../../modules/web/Controllers/AccountManagerController.php:113 +#: ../../../modules/web/Controllers/AccountManagerController.php:118 msgid "Cuenta eliminada" msgstr "Account removed" -#: ../../../modules/api/Controllers/CategoryController.php:87 -#: ../../../modules/api/Controllers/CategoryController.php:91 +#: ../../../modules/api/Controllers/CategoryController.php:62 +msgid "Categoría visualizada" +msgstr "Category displayed" + +#: ../../../modules/api/Controllers/CategoryController.php:90 +#: ../../../modules/api/Controllers/CategoryController.php:95 +#: ../../../modules/web/Controllers/CategoryController.php:248 #: ../../../modules/web/Controllers/CategoryController.php:252 -#: ../../../modules/web/Controllers/CategoryController.php:256 msgid "Categoría creada" msgstr "Category added" -#: ../../../modules/api/Controllers/CategoryController.php:116 #: ../../../modules/api/Controllers/CategoryController.php:120 -#: ../../../modules/web/Controllers/CategoryController.php:294 -#: ../../../modules/web/Controllers/CategoryController.php:298 +#: ../../../modules/api/Controllers/CategoryController.php:125 +#: ../../../modules/web/Controllers/CategoryController.php:288 +#: ../../../modules/web/Controllers/CategoryController.php:292 msgid "Categoría actualizada" msgstr "Category updated" -#: ../../../modules/api/Controllers/CategoryController.php:144 -#: ../../../modules/api/Controllers/CategoryController.php:148 +#: ../../../modules/api/Controllers/CategoryController.php:149 +#: ../../../modules/api/Controllers/CategoryController.php:154 #: ../../../modules/web/Controllers/CategoryController.php:214 #: ../../../modules/web/Controllers/CategoryController.php:218 msgid "Categoría eliminada" msgstr "Category deleted" -#: ../../../modules/api/Controllers/ClientController.php:115 -#: ../../../modules/api/Controllers/ClientController.php:119 +#: ../../../modules/api/Controllers/ClientController.php:63 +msgid "Cliente visualizado" +msgstr "Client displayed" + +#: ../../../modules/api/Controllers/ClientController.php:124 +#: ../../../modules/api/Controllers/ClientController.php:129 #: ../../../modules/web/Controllers/ClientController.php:280 #: ../../../modules/web/Controllers/ClientController.php:284 msgid "Cliente actualizado" msgstr "Client updated" -#: ../../../modules/api/Controllers/ClientController.php:143 -#: ../../../modules/api/Controllers/ClientController.php:147 -#: ../../../modules/web/Controllers/ClientController.php:213 -#: ../../../modules/web/Controllers/ClientController.php:217 +#: ../../../modules/api/Controllers/ClientController.php:153 +#: ../../../modules/api/Controllers/ClientController.php:158 +#: ../../../modules/web/Controllers/ClientController.php:212 +#: ../../../modules/web/Controllers/ClientController.php:216 msgid "Cliente eliminado" msgstr "Client deleted" #: ../../../modules/api/Controllers/ConfigController.php:57 -#: ../../../modules/web/Controllers/ConfigBackupController.php:65 +#: ../../../modules/web/Controllers/ConfigBackupController.php:64 msgid "Copia de la aplicación y base de datos realizada correctamente" msgstr "Application and database backup completed successfully" -#: ../../../modules/api/Controllers/ConfigController.php:60 -#: ../../../modules/web/Controllers/ConfigBackupController.php:68 +#: ../../../modules/api/Controllers/ConfigController.php:58 +#: ../../../modules/api/Controllers/ConfigController.php:83 +#: ../../../modules/api/Controllers/Help/ConfigHelp.php:43 +#: ../../../modules/api/Controllers/Help/ConfigHelp.php:54 +msgid "Ruta" +msgstr "Path" + +#: ../../../modules/api/Controllers/ConfigController.php:61 +#: ../../../modules/web/Controllers/ConfigBackupController.php:67 msgid "Proceso de backup finalizado" msgstr "Backup process finished" -#: ../../../modules/api/Controllers/ConfigController.php:83 -#: ../../../modules/web/Controllers/ConfigBackupController.php:94 +#: ../../../modules/api/Controllers/ConfigController.php:82 +#: ../../../modules/web/Controllers/ConfigBackupController.php:92 msgid "Exportación de sysPass en XML" msgstr "sysPass XML export" #: ../../../modules/api/Controllers/ConfigController.php:91 #: ../../../modules/api/Controllers/ConfigController.php:94 -#: ../../../modules/web/Controllers/ConfigBackupController.php:104 -#: ../../../modules/web/Controllers/ConfigBackupController.php:129 +#: ../../../modules/web/Controllers/ConfigBackupController.php:102 +#: ../../../modules/web/Controllers/ConfigBackupController.php:127 msgid "Proceso de exportación finalizado" msgstr "Export process finished" -#: ../../../modules/api/Controllers/TagController.php:82 -#: ../../../modules/api/Controllers/TagController.php:86 -#: ../../../modules/web/Controllers/TagController.php:230 -msgid "Etiqueta creada" -msgstr "Tag added" +#: ../../../modules/api/Controllers/Help/AccountHelp.php:43 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:54 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:67 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:104 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:142 +msgid "Id de la cuenta" +msgstr "Account Id" -#: ../../../modules/api/Controllers/TagController.php:83 -#: ../../../modules/api/Controllers/TagController.php:111 -#: ../../../modules/api/Controllers/TagController.php:139 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:55 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:68 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:81 +msgid "Clave del token" +msgstr "Token's password" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:56 +msgid "Devolver detalles en la respuesta" +msgstr "Send details in the response" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:69 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:85 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:66 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:72 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:83 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:82 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:85 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:93 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:147 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:155 +#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:31 +#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:288 +#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:291 +#: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:79 +#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:150 +#: ../../../modules/web/themes/material-blue/views/config/mail.inc:117 +#: ../../../modules/web/themes/material-blue/views/config/mail.inc:124 +#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:250 +#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:257 +#: ../../../modules/web/themes/material-blue/views/install/index.inc:42 +#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:47 +#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:94 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:102 +#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:38 +#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:45 +#: ../../../modules/web/themes/material-blue/views/login/index.inc:26 +#: ../../../modules/web/themes/material-blue/views/login/index.inc:88 +#: ../../../modules/web/themes/material-blue/views/userpassreset/reset.inc:20 +msgid "Clave" +msgstr "Password" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:70 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:91 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:113 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:89 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:104 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:173 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:129 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:131 +msgid "Fecha Caducidad Clave" +msgstr "Password Expiry Date" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:82 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:105 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:28 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:42 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:22 +#: ../../../modules/web/themes/material-blue/views/account/account-request.inc:24 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:67 +msgid "Nombre de cuenta" +msgstr "Account name" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:83 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:106 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:43 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:78 +msgid "Id de categoría" +msgstr "Category Id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:84 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:107 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:43 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:79 +msgid "Id de cliente" +msgstr "Client Id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:86 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:108 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:99 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:141 +msgid "Usuario de acceso" +msgstr "Access user" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:87 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:109 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:86 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:128 +msgid "URL o IP de acceso" +msgstr "Access URL or IP" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:88 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:110 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:124 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:78 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:199 +msgid "Notas sobre la cuenta" +msgstr "Notes about the account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:89 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:111 +#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:126 +#: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:106 +msgid "Cuenta Privada" +msgstr "Private Account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:90 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:112 +#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:139 +msgid "Cuenta Privada Grupo" +msgstr "Private Account for Group" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:92 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:114 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:228 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:230 +#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:9 +msgid "Cuenta Vinculada" +msgstr "Linked Account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:93 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:115 +msgid "Array con Ids de etiquetas" +msgstr "Array with tags id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:126 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:66 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:67 +#: ../../../modules/api/Controllers/Help/TagHelp.php:65 +#: ../../../modules/web/themes/material-blue/views/account/search-searchbox.inc:16 +msgid "Texto a buscar" +msgstr "Text to search" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:127 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:67 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:68 +#: ../../../modules/api/Controllers/Help/TagHelp.php:66 +msgid "Número de resultados a mostrar" +msgstr "Number of results to show" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:128 +msgid "Id de categoría a filtrar" +msgstr "Category Id to filter on" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:129 +msgid "Id de cliente a filtrar" +msgstr "Client Id to filter on" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:130 +msgid "Array con Ids de etiquetas a filtrar" +msgstr "Array with tags id for filtering" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:131 +msgid "Operador de filtrado" +msgstr "Filtering operator" + +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:24 +msgid "Nombre de la categoría" +msgstr "Category name" + +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:55 +#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:36 +msgid "Descripción de la categoría" +msgstr "Category description" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:27 +msgid "Nombre del cliente" +msgstr "Client name" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:55 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:40 +msgid "Descripción del cliente" +msgstr "Client description" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:56 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:144 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:63 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:92 +msgid "Global" +msgstr "Global" + +#: ../../../modules/api/Controllers/Help/TagHelp.php:43 +#: ../../../modules/api/Controllers/Help/TagHelp.php:77 +msgid "Id de etiqueta" +msgstr "Tag Id" + +#: ../../../modules/api/Controllers/Help/TagHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/tag.inc:24 +msgid "Nombre de la etiqueta" +msgstr "Tag name" + +#: ../../../modules/api/Controllers/TagController.php:61 +msgid "Etiqueta visualizada" +msgstr "Tag displayed" + +#: ../../../modules/api/Controllers/TagController.php:62 +#: ../../../modules/api/Controllers/TagController.php:89 +#: ../../../modules/api/Controllers/TagController.php:117 +#: ../../../modules/api/Controllers/TagController.php:146 msgid "Etiqueta" msgstr "Tag" -#: ../../../modules/api/Controllers/TagController.php:110 -#: ../../../modules/api/Controllers/TagController.php:114 -#: ../../../modules/web/Controllers/TagController.php:259 +#: ../../../modules/api/Controllers/TagController.php:88 +#: ../../../modules/api/Controllers/TagController.php:92 +#: ../../../modules/web/Controllers/TagController.php:229 +msgid "Etiqueta creada" +msgstr "Tag added" + +#: ../../../modules/api/Controllers/TagController.php:116 +#: ../../../modules/api/Controllers/TagController.php:121 +#: ../../../modules/web/Controllers/TagController.php:260 msgid "Etiqueta actualizada" msgstr "Tag updated" -#: ../../../modules/api/Controllers/TagController.php:138 -#: ../../../modules/api/Controllers/TagController.php:142 -#: ../../../modules/web/Controllers/TagController.php:204 +#: ../../../modules/api/Controllers/TagController.php:145 +#: ../../../modules/api/Controllers/TagController.php:149 +#: ../../../modules/web/Controllers/TagController.php:203 msgid "Etiqueta eliminada" msgstr "Tag removed" @@ -2454,9 +2594,9 @@ msgstr "Tag removed" msgid "Es necesario actualizar" msgstr "Updating needed" -#: ../../../modules/web/Controllers/AccountController.php:148 -#: ../../../modules/web/Controllers/AccountController.php:203 -#: ../../../modules/web/Controllers/AccountController.php:474 +#: ../../../modules/web/Controllers/AccountController.php:146 +#: ../../../modules/web/Controllers/AccountController.php:201 +#: ../../../modules/web/Controllers/AccountController.php:473 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:60 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:61 #: ../../../modules/web/themes/material-blue/views/account/linkedAccounts.inc:26 @@ -2464,28 +2604,28 @@ msgstr "Updating needed" msgid "Detalles de Cuenta" msgstr "Account Details" -#: ../../../modules/web/Controllers/AccountController.php:221 +#: ../../../modules/web/Controllers/AccountController.php:220 msgid "Enlace visualizado" msgstr "Link viewed" -#: ../../../modules/web/Controllers/AccountController.php:224 +#: ../../../modules/web/Controllers/AccountController.php:223 msgid "Agente" msgstr "Agent" -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "HTTPS" msgstr "HTTPS" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:254 -#: ../../../modules/web/Controllers/AccountController.php:298 -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:274 +#: ../../../modules/web/Controllers/AccountController.php:253 +#: ../../../modules/web/Controllers/AccountController.php:297 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:275 #: ../../../config/actions.xml:151 msgid "Nueva Cuenta" msgstr "New Account" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:342 +#: ../../../modules/web/Controllers/AccountController.php:341 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:176 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:177 #: ../../../modules/web/themes/material-blue/views/account/linkedAccounts.inc:18 @@ -2494,72 +2634,60 @@ msgid "Editar Cuenta" msgstr "Edit Account" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:387 +#: ../../../modules/web/Controllers/AccountController.php:386 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:312 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:313 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:475 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:476 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:552 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:553 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:147 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:148 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:175 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:176 #: ../../../config/actions.xml:163 ../../../config/actions.xml:481 #: ../../../config/actions.xml:781 msgid "Eliminar Cuenta" msgstr "Remove Account" -#: ../../../modules/web/Controllers/AccountController.php:430 +#: ../../../modules/web/Controllers/AccountController.php:429 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:155 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:156 msgid "Modificar Clave de Cuenta" msgstr "Edit Account Password" -#: ../../../modules/web/Controllers/AccountController.php:623 -#: ../../../modules/web/Controllers/AccountController.php:653 +#: ../../../modules/web/Controllers/AccountController.php:625 +#: ../../../modules/web/Controllers/AccountController.php:654 msgid "Clave copiada" msgstr "Password copied" -#: ../../../modules/web/Controllers/AccountController.php:734 -#: ../../../modules/web/Controllers/AccountController.php:745 -msgid "Cuenta actualizada" -msgstr "Account updated" - -#: ../../../modules/web/Controllers/AccountController.php:776 -#: ../../../modules/web/Controllers/AccountController.php:787 -#: ../../../modules/web/Controllers/UserController.php:411 -#: ../../../modules/web/Controllers/UserController.php:415 -#: ../../../modules/web/Controllers/UserPassResetController.php:186 -#: ../../../modules/web/Controllers/UserPassResetController.php:190 -msgid "Clave actualizada" -msgstr "Password updated" - -#: ../../../modules/web/Controllers/AccountController.php:816 -#: ../../../modules/web/Controllers/AccountController.php:827 +#: ../../../modules/web/Controllers/AccountController.php:814 +#: ../../../modules/web/Controllers/AccountController.php:825 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:145 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:150 msgid "Cuenta restaurada" msgstr "Account restored" +#: ../../../modules/web/Controllers/AccountController.php:850 #: ../../../modules/web/Controllers/AccountController.php:853 -#: ../../../modules/web/Controllers/AccountController.php:856 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:94 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:97 -#: ../../../modules/web/Controllers/AccountManagerController.php:96 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:99 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:102 #: ../../../modules/web/Controllers/AccountManagerController.php:99 +#: ../../../modules/web/Controllers/AccountManagerController.php:102 msgid "Cuentas eliminadas" msgstr "Accounts removed" -#: ../../../modules/web/Controllers/AccountController.php:894 +#: ../../../modules/web/Controllers/AccountController.php:890 #: ../../../modules/web/Forms/NotificationForm.php:100 msgid "Es necesaria una descripción" msgstr "A description is needed" -#: ../../../modules/web/Controllers/AccountController.php:902 +#: ../../../modules/web/Controllers/AccountController.php:898 msgid "Solicitante" msgstr "Requester" -#: ../../../modules/web/Controllers/AccountController.php:905 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:77 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:180 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:702 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1255 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1362 +#: ../../../modules/web/Controllers/AccountController.php:901 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:121 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:106 #: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:29 #: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:33 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:33 @@ -2568,138 +2696,142 @@ msgstr "Requester" msgid "Descripción" msgstr "Description" -#: ../../../modules/web/Controllers/AccountController.php:918 +#: ../../../modules/web/Controllers/AccountController.php:914 msgid "Solicitud realizada" msgstr "Request done" -#: ../../../modules/web/Controllers/AccountFavoriteController.php:53 +#: ../../../modules/web/Controllers/AccountFavoriteController.php:55 msgid "Favorito añadido" msgstr "Favorite added" -#: ../../../modules/web/Controllers/AccountFavoriteController.php:69 +#: ../../../modules/web/Controllers/AccountFavoriteController.php:73 msgid "Favorito eliminado" msgstr "Favorite deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:67 -#: ../../../modules/web/Controllers/AccountFileController.php:117 +#: ../../../modules/web/Controllers/AccountFileController.php:69 +#: ../../../modules/web/Controllers/AccountFileController.php:121 msgid "El archivo no existe" msgstr "The file does not exist" -#: ../../../modules/web/Controllers/AccountFileController.php:80 -#: ../../../modules/web/Controllers/AccountFileController.php:93 +#: ../../../modules/web/Controllers/AccountFileController.php:82 +#: ../../../modules/web/Controllers/AccountFileController.php:95 msgid "Archivo visualizado" msgstr "File viewed" -#: ../../../modules/web/Controllers/AccountFileController.php:105 +#: ../../../modules/web/Controllers/AccountFileController.php:107 #: ../../../config/strings.js.inc:40 msgid "Archivo no soportado para visualizar" msgstr "File not supported for preview" -#: ../../../modules/web/Controllers/AccountFileController.php:131 +#: ../../../modules/web/Controllers/AccountFileController.php:135 msgid "Archivo descargado" msgstr "File downloaded" -#: ../../../modules/web/Controllers/AccountFileController.php:152 +#: ../../../modules/web/Controllers/AccountFileController.php:160 msgid "CONSULTA INVÁLIDA" msgstr "INVALID QUERY" -#: ../../../modules/web/Controllers/AccountFileController.php:158 +#: ../../../modules/web/Controllers/AccountFileController.php:166 msgid "No hay extensiones permitidas" msgstr "There aren't any allowed extensions" -#: ../../../modules/web/Controllers/AccountFileController.php:175 +#: ../../../modules/web/Controllers/AccountFileController.php:183 #, php-format msgid "Extensión: %s" msgstr "Extension: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:180 +#: ../../../modules/web/Controllers/AccountFileController.php:188 msgid "Archivo inválido" msgstr "Invalid file" -#: ../../../modules/web/Controllers/AccountFileController.php:182 +#: ../../../modules/web/Controllers/AccountFileController.php:190 #, php-format msgid "Archivo: %s" msgstr "File: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:190 +#: ../../../modules/web/Controllers/AccountFileController.php:198 #, php-format msgid "Máximo tamaño: %s" msgstr "Maximum size: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:198 +#: ../../../modules/web/Controllers/AccountFileController.php:206 msgid "Tamaño de archivo superado" msgstr "File size exceeded" -#: ../../../modules/web/Controllers/AccountFileController.php:200 +#: ../../../modules/web/Controllers/AccountFileController.php:208 #, php-format msgid "Máximo tamaño: %d KB" msgstr "Maximum size: %d KB" -#: ../../../modules/web/Controllers/AccountFileController.php:221 -#: ../../../modules/web/Controllers/AccountFileController.php:230 +#: ../../../modules/web/Controllers/AccountFileController.php:229 +#: ../../../modules/web/Controllers/AccountFileController.php:238 msgid "Archivo guardado" msgstr "File saved" -#: ../../../modules/web/Controllers/AccountFileController.php:226 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:353 +#: ../../../modules/web/Controllers/AccountFileController.php:234 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:106 msgid "Tamaño" msgstr "Size" -#: ../../../modules/web/Controllers/AccountFileController.php:307 -#: ../../../modules/web/Controllers/AccountFileController.php:310 +#: ../../../modules/web/Controllers/AccountFileController.php:318 +#: ../../../modules/web/Controllers/AccountFileController.php:321 msgid "Archivos eliminados" msgstr "Files deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:314 +#: ../../../modules/web/Controllers/AccountFileController.php:326 msgid "Archivo eliminado" msgstr "File deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:320 +#: ../../../modules/web/Controllers/AccountFileController.php:332 msgid "Archivo Eliminado" msgstr "File Deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:357 +#: ../../../modules/web/Controllers/AccountFileController.php:368 msgid "Gestión de archivos deshabilitada" msgstr "Files management disabled" -#: ../../../modules/web/Controllers/AuthTokenController.php:102 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:919 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:920 +#: ../../../modules/web/Controllers/AccountFileController.php:385 +msgid "No hay archivos asociados a la cuenta" +msgstr "There are no linked files for the account" + +#: ../../../modules/web/Controllers/AuthTokenController.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:153 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:154 msgid "Nueva Autorización" msgstr "New Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:166 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:942 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:943 +#: ../../../modules/web/Controllers/AuthTokenController.php:165 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:188 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:189 msgid "Editar Autorización" msgstr "Edit Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:206 -#: ../../../modules/web/Controllers/AuthTokenController.php:209 +#: ../../../modules/web/Controllers/AuthTokenController.php:204 +#: ../../../modules/web/Controllers/AuthTokenController.php:207 msgid "Autorizaciones eliminadas" msgstr "Authorizations deleted" -#: ../../../modules/web/Controllers/AuthTokenController.php:218 -#: ../../../modules/web/Controllers/AuthTokenController.php:222 +#: ../../../modules/web/Controllers/AuthTokenController.php:217 +#: ../../../modules/web/Controllers/AuthTokenController.php:221 msgid "Autorización eliminada" msgstr "Authorization deleted" -#: ../../../modules/web/Controllers/AuthTokenController.php:252 +#: ../../../modules/web/Controllers/AuthTokenController.php:250 msgid "Autorización creada" msgstr "Authorization added" -#: ../../../modules/web/Controllers/AuthTokenController.php:325 +#: ../../../modules/web/Controllers/AuthTokenController.php:322 msgid "Ver Autorización" msgstr "View Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:333 +#: ../../../modules/web/Controllers/AuthTokenController.php:330 msgid "Autorización visualizada" msgstr "Authorization viewed" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/CategoryController.php:100 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:112 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:113 +#: ../../../modules/web/Controllers/CategoryController.php:99 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:150 #: ../../../modules/web/themes/material-blue/views/account/account.inc:110 #: ../../../config/actions.xml:301 msgid "Nueva Categoría" @@ -2707,40 +2839,40 @@ msgstr "New Category" #. (itstool) path: action/text #: ../../../modules/web/Controllers/CategoryController.php:162 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:124 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:125 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:167 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:168 #: ../../../config/actions.xml:307 msgid "Editar Categoría" msgstr "Edit Category" -#: ../../../modules/web/Controllers/CategoryController.php:202 -#: ../../../modules/web/Controllers/CategoryController.php:205 +#: ../../../modules/web/Controllers/CategoryController.php:201 +#: ../../../modules/web/Controllers/CategoryController.php:204 msgid "Categorías eliminadas" msgstr "Categories deleted" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/CategoryController.php:321 +#: ../../../modules/web/Controllers/CategoryController.php:315 #: ../../../config/actions.xml:295 msgid "Ver Categoría" msgstr "View Category" -#: ../../../modules/web/Controllers/ClientController.php:101 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:219 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:220 +#: ../../../modules/web/Controllers/ClientController.php:100 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:152 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:153 #: ../../../modules/web/themes/material-blue/views/account/account.inc:86 msgid "Nuevo Cliente" msgstr "New Client" #. (itstool) path: action/text #: ../../../modules/web/Controllers/ClientController.php:163 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:231 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:232 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:170 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:171 #: ../../../config/actions.xml:337 msgid "Editar Cliente" msgstr "Edit Client" -#: ../../../modules/web/Controllers/ClientController.php:202 -#: ../../../modules/web/Controllers/ClientController.php:205 +#: ../../../modules/web/Controllers/ClientController.php:201 +#: ../../../modules/web/Controllers/ClientController.php:204 msgid "Clientes eliminados" msgstr "Clients deleted" @@ -2770,98 +2902,98 @@ msgstr "Public links enabled" msgid "Enlaces públicos deshabilitados" msgstr "Public links disabled" -#: ../../../modules/web/Controllers/ConfigBackupController.php:54 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:91 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:150 +#: ../../../modules/web/Controllers/ConfigBackupController.php:53 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:92 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:151 #: ../../../modules/web/Controllers/ConfigImportController.php:56 #: ../../../modules/web/Controllers/ConfigLdapController.php:216 -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:53 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:55 #: ../../../modules/web/Forms/UserForm.php:131 #: ../../../modules/web/Forms/UserForm.php:153 #: ../../../modules/web/Forms/UserForm.php:171 msgid "Ey, esto es una DEMO!!" msgstr "Ey, this is a DEMO!!" -#: ../../../modules/web/Controllers/ConfigBackupController.php:88 +#: ../../../modules/web/Controllers/ConfigBackupController.php:86 #: ../../../modules/web/Controllers/UserPassResetController.php:173 #: ../../../modules/web/Forms/AccountForm.php:143 #: ../../../modules/web/Forms/UserForm.php:161 msgid "Las claves no coinciden" msgstr "The passwords do not match" -#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/Controllers/ConfigBackupController.php:117 msgid "Verificación de datos exportados finalizada" msgstr "Verification of exported data finished" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:276 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:124 #: ../../../modules/web/themes/material-blue/views/common/aux-customfields.inc:13 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:87 msgid "Encriptado" msgstr "Encrypted" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:117 msgid "Sí" msgstr "Yes" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:117 msgid "No" msgstr "No" -#: ../../../modules/web/Controllers/ConfigBackupController.php:125 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1089 +#: ../../../modules/web/Controllers/ConfigBackupController.php:123 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:91 #: ../../../modules/web/themes/material-blue/views/account/account.inc:203 #: ../../../modules/web/themes/material-blue/views/account/account.inc:205 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:310 msgid "Etiquetas" msgstr "Tags" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:71 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:72 msgid "Clave maestra no indicada" msgstr "Master password needed" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:75 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:76 msgid "Se ha de confirmar el cambio de clave" msgstr "The password update must be confirmed" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:79 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:80 msgid "Las claves son idénticas" msgstr "The passwords are the same" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:83 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:84 msgid "Las claves maestras no coinciden" msgstr "The master passwords do not match" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:87 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:88 msgid "La clave maestra actual no coincide" msgstr "The current master password does not match" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:137 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:138 msgid "Error al guardar el hash de la clave maestra" msgstr "Error while saving the Master Password's hash" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:158 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:160 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:159 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:161 msgid "Hash de clave maestra actualizado" msgstr "Master password hash updated" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:167 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:168 msgid "Error al actualizar el hash de la clave maestra" msgstr "Error while updating the master password hash" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:189 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:195 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:199 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:190 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:196 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:200 msgid "Clave Temporal Generada" msgstr "Temporary Password Generated" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:189 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:190 msgid "Email enviado" msgstr "Email sent" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:195 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:196 msgid "Error al enviar email" msgstr "Error while sending the email" @@ -2906,7 +3038,7 @@ msgstr "Accounts imported" msgid "Importación finalizada" msgstr "Import finished" -#: ../../../modules/web/Controllers/ConfigImportController.php:82 +#: ../../../modules/web/Controllers/ConfigImportController.php:83 msgid "No se importaron cuentas" msgstr "No accounts were imported" @@ -3073,33 +3205,33 @@ msgstr "DokuWiki enabled" msgid "DokuWiki deshabilitada" msgstr "DokuWiki disabled" -#: ../../../modules/web/Controllers/CustomFieldController.php:102 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:305 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:306 +#: ../../../modules/web/Controllers/CustomFieldController.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:155 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:156 msgid "Nuevo Campo" msgstr "New Field" #: ../../../modules/web/Controllers/CustomFieldController.php:162 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:317 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:318 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:173 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:174 msgid "Editar Campo" msgstr "Edit Field" -#: ../../../modules/web/Controllers/CustomFieldController.php:198 -#: ../../../modules/web/Controllers/CustomFieldController.php:201 +#: ../../../modules/web/Controllers/CustomFieldController.php:197 +#: ../../../modules/web/Controllers/CustomFieldController.php:200 msgid "Campos eliminados" msgstr "Fields deleted" -#: ../../../modules/web/Controllers/CustomFieldController.php:207 +#: ../../../modules/web/Controllers/CustomFieldController.php:206 msgid "Campo eliminado" msgstr "Field deleted" -#: ../../../modules/web/Controllers/CustomFieldController.php:235 -#: ../../../modules/web/Controllers/CustomFieldController.php:239 +#: ../../../modules/web/Controllers/CustomFieldController.php:234 +#: ../../../modules/web/Controllers/CustomFieldController.php:238 msgid "Campo creado" msgstr "Field added" -#: ../../../modules/web/Controllers/CustomFieldController.php:297 +#: ../../../modules/web/Controllers/CustomFieldController.php:298 msgid "Ver Campo" msgstr "View Field" @@ -3115,8 +3247,8 @@ msgstr "It will be running shortly" msgid "Error en la verificación de la base de datos" msgstr "Error while checking the database" -#: ../../../modules/web/Controllers/EventlogController.php:113 -#: ../../../modules/web/Controllers/EventlogController.php:116 +#: ../../../modules/web/Controllers/EventlogController.php:112 +#: ../../../modules/web/Controllers/EventlogController.php:115 msgid "Registro de eventos vaciado" msgstr "Event log cleared" @@ -3134,7 +3266,7 @@ msgstr "View Current" #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:305 #: ../../../modules/web/themes/material-blue/views/config/general.inc:22 #: ../../../modules/web/themes/material-blue/views/config/import.inc:89 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:149 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:151 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:275 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:420 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:206 @@ -3241,116 +3373,18 @@ msgid "Ordenar por URL / IP" msgstr "Sort by URL / IP" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:101 -#: ../../../config/actions.xml:319 -msgid "Buscar Categoría" -msgstr "Search for Category" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:136 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:137 -#: ../../../config/actions.xml:313 -msgid "Eliminar Categoría" -msgstr "Delete Category" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:189 -#: ../../../config/strings.js.inc:66 -msgid "SI" -msgstr "YES" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:189 -#: ../../../config/strings.js.inc:67 -msgid "NO" -msgstr "NO" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:208 -#: ../../../config/actions.xml:349 -msgid "Buscar Cliente" -msgstr "Search for Client" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:242 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:243 -#: ../../../config/actions.xml:343 -msgid "Eliminar Cliente" -msgstr "Delete Client" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:264 -#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:46 -#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:48 -msgid "Módulo" -msgstr "Module" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:266 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:577 -msgid "Propiedades" -msgstr "Properties" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:286 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:27 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:342 -msgid "Campos Personalizados" -msgstr "Custom Fields" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:294 -msgid "Buscar Campo" -msgstr "Search for Field" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:328 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:329 -msgid "Eliminar Campo" -msgstr "Delete Field" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:374 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:35 -#: ../../../modules/web/themes/material-blue/views/config/accounts.inc:277 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:146 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:406 -#: ../../../config/actions.xml:19 -msgid "Archivos" -msgstr "Files" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:382 -#: ../../../config/actions.xml:469 -msgid "Buscar Archivo" -msgstr "Search for File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:393 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:394 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:45 -#: ../../../config/actions.xml:199 ../../../config/actions.xml:445 -msgid "Ver Archivo" -msgstr "View File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:405 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:406 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:38 -#: ../../../config/actions.xml:211 ../../../config/actions.xml:451 -msgid "Descargar Archivo" -msgstr "Download File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:416 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:417 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:30 -#: ../../../config/actions.xml:217 ../../../config/actions.xml:457 -msgid "Eliminar Archivo" -msgstr "Delete File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:464 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:531 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:132 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:143 #: ../../../config/actions.xml:487 ../../../config/actions.xml:787 msgid "Buscar Cuenta" msgstr "Search for Account" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:499 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1359 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:90 +msgid "Cuentas (H)" +msgstr "Accounts (H)" + +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:118 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:98 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:112 #: ../../../modules/web/themes/material-blue/views/account/account.inc:182 @@ -3360,209 +3394,327 @@ msgstr "Search for Account" msgid "Fecha" msgstr "Date" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:500 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1153 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1363 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:122 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:102 msgid "Estado" msgstr "Status" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:512 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:127 msgid "Modificada" msgstr "Modified" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:513 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:128 msgid "Eliminada" msgstr "Removed" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:523 -msgid "Cuentas (H)" -msgstr "Accounts (H)" - #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:542 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:543 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:158 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:159 #: ../../../config/actions.xml:181 ../../../config/actions.xml:793 msgid "Restaurar Cuenta" msgstr "Account Restore" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:574 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1253 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:358 +msgid "Autorizaciones API" +msgstr "API Authorizations" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:138 +msgid "Buscar Token" +msgstr "Search for Token" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:171 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:172 +msgid "Ver token de Autorización" +msgstr "View Authorization token" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:205 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:206 +msgid "Eliminar Autorización" +msgstr "Delete Authorization" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:134 +#: ../../../config/actions.xml:319 +msgid "Buscar Categoría" +msgstr "Search for Category" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:184 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:185 +#: ../../../config/actions.xml:313 +msgid "Eliminar Categoría" +msgstr "Delete Category" + +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:120 +#: ../../../config/strings.js.inc:66 +msgid "SI" +msgstr "YES" + +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:120 +#: ../../../config/strings.js.inc:67 +msgid "NO" +msgstr "NO" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:137 +#: ../../../config/actions.xml:349 +msgid "Buscar Cliente" +msgstr "Search for Client" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:187 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:188 +#: ../../../config/actions.xml:343 +msgid "Eliminar Cliente" +msgstr "Delete Client" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:91 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:27 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:342 +msgid "Campos Personalizados" +msgstr "Custom Fields" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:104 +#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:46 +#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:48 +msgid "Módulo" +msgstr "Module" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:118 +msgid "Propiedades" +msgstr "Properties" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:140 +msgid "Buscar Campo" +msgstr "Search for Field" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:190 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:191 +msgid "Eliminar Campo" +msgstr "Delete Field" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:88 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:331 +#: ../../../modules/web/themes/material-blue/views/eventlog/index.inc:1 +#: ../../../config/actions.xml:127 +msgid "Registro de Eventos" +msgstr "Event Log" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:101 +msgid "Fecha / Hora" +msgstr "Date / Time" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:102 +msgid "Nivel" +msgstr "Level" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:103 +msgid "Evento" +msgstr "Event" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:115 #: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:45 #: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:26 msgid "Login" msgstr "Login" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:575 -#: ../../../modules/web/Controllers/UserProfileController.php:216 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:123 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:125 -msgid "Perfil" -msgstr "Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:105 +msgid "IP" +msgstr "IP" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:167 +msgid "Buscar Evento" +msgstr "Search for Events" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:182 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:183 +msgid "Refrescar" +msgstr "Refresh" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:200 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:201 +msgid "Vaciar registro de eventos" +msgstr "Clear event log" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:607 -#: ../../../config/actions.xml:589 -msgid "Buscar Usuario" -msgstr "Search for User" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:90 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:35 +#: ../../../modules/web/themes/material-blue/views/config/accounts.inc:277 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:146 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:406 +#: ../../../config/actions.xml:19 +msgid "Archivos" +msgstr "Files" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:617 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:618 -#: ../../../modules/web/Controllers/UserController.php:106 -#: ../../../config/actions.xml:565 -msgid "Nuevo Usuario" -msgstr "New User" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:632 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:633 -#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:440 -msgid "Importar usuarios de LDAP" -msgstr "Import users from LDAP" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:646 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:647 -msgid "Ver Detalles de Usuario" -msgstr "View User Details" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:141 +#: ../../../config/actions.xml:469 +msgid "Buscar Archivo" +msgstr "Search for File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:657 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:658 -#: ../../../modules/web/Controllers/UserController.php:191 -#: ../../../config/actions.xml:571 -msgid "Editar Usuario" -msgstr "Edit User" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:668 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:669 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:61 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:119 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:124 -msgid "Cambiar Clave de Usuario" -msgstr "Change User's Password" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:156 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:157 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:45 +#: ../../../config/actions.xml:199 ../../../config/actions.xml:445 +msgid "Ver Archivo" +msgstr "View File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:680 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:681 -#: ../../../config/actions.xml:577 -msgid "Eliminar Usuario" -msgstr "Delete User" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:173 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:174 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:38 +#: ../../../config/actions.xml:211 ../../../config/actions.xml:451 +msgid "Descargar Archivo" +msgstr "Download File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:726 -#: ../../../config/actions.xml:619 -msgid "Buscar Grupo" -msgstr "Search for Group" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:190 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:191 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:30 +#: ../../../config/actions.xml:217 ../../../config/actions.xml:457 +msgid "Eliminar Archivo" +msgstr "Delete File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:737 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:738 -#: ../../../modules/web/Controllers/UserGroupController.php:107 -#: ../../../config/actions.xml:601 -msgid "Nuevo Grupo" -msgstr "New Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:105 +#: ../../../modules/web/themes/material-blue/inc/Icons.php:67 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:105 +#: ../../../modules/web/themes/material-blue/views/notification/index.inc:1 +#: ../../../config/actions.xml:667 +msgid "Notificaciones" +msgstr "Notifications" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:120 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:28 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:35 +msgid "Componente" +msgstr "Component" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:142 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:104 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:108 +msgid "Leída" +msgstr "Read" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:143 +msgid "Sólo Admins" +msgstr "Only Admins" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:749 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:750 -#: ../../../modules/web/Controllers/UserGroupController.php:321 -#: ../../../config/actions.xml:595 -msgid "Ver Grupo" -msgstr "View Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:160 +#: ../../../config/actions.xml:829 +msgid "Buscar Notificación" +msgstr "Search for Notification" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:175 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:176 +#: ../../../modules/web/Controllers/NotificationController.php:179 +msgid "Nueva Notificación" +msgstr "New Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:760 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:761 -#: ../../../modules/web/Controllers/UserGroupController.php:171 -#: ../../../config/actions.xml:607 -msgid "Editar Grupo" -msgstr "Edit Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:193 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:194 +#: ../../../modules/web/Controllers/NotificationController.php:103 +#: ../../../config/actions.xml:799 +msgid "Ver Notificación" +msgstr "View Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:771 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:772 -#: ../../../config/actions.xml:613 -msgid "Eliminar Grupo" -msgstr "Delete Group" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:807 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:278 -msgid "Perfiles" -msgstr "Profiles" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:223 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:224 +#: ../../../config/actions.xml:823 +msgid "Marcar Notificación" +msgstr "Checkout Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:815 -#: ../../../config/actions.xml:649 -msgid "Buscar Perfil" -msgstr "Search for Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:241 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:242 +#: ../../../modules/web/Controllers/NotificationController.php:210 +#: ../../../config/actions.xml:811 +msgid "Editar Notificación" +msgstr "Edit Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:826 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:827 -#: ../../../modules/web/Controllers/UserProfileController.php:101 -#: ../../../config/actions.xml:631 -msgid "Nuevo Perfil" -msgstr "New Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:258 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:259 +#: ../../../config/actions.xml:817 +msgid "Eliminar Notificación" +msgstr "Delete Notification" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:838 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:839 -msgid "Ver Detalles de Perfil" -msgstr "View Profile Details" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:89 +msgid "Plugins" +msgstr "Plugins" + +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:101 +msgid "Plugin" +msgstr "Plugin" + +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:118 +msgid "No disponible" +msgstr "Unavailable" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:849 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:850 -#: ../../../modules/web/Controllers/UserProfileController.php:166 -#: ../../../config/actions.xml:637 -msgid "Editar Perfil" -msgstr "Edit Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:134 +#: ../../../config/actions.xml:535 +msgid "Buscar Plugin" +msgstr "Search for Plugin" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:860 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:861 -#: ../../../config/actions.xml:643 -msgid "Eliminar Perfil" -msgstr "Delete Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:150 +#: ../../../modules/web/Controllers/PluginController.php:120 +#: ../../../config/actions.xml:529 +msgid "Ver Plugin" +msgstr "View Plugin" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:900 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:358 -msgid "Autorizaciones API" -msgstr "API Authorizations" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:166 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:167 +msgid "Habilitar" +msgstr "Enable" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:908 -msgid "Buscar Token" -msgstr "Search for Token" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:185 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:186 +msgid "Deshabilitar" +msgstr "Disable" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:931 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:932 -msgid "Ver token de Autorización" -msgstr "View Authorization token" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:204 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:205 +msgid "Restablecer Datos" +msgstr "Reset Data" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:953 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:954 -msgid "Eliminar Autorización" -msgstr "Delete Authorization" +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:43 +msgid "Enlaces" +msgstr "Links" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:976 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:107 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:45 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:47 msgid "Fecha Creación" msgstr "Creation Date" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:977 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:108 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:182 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:53 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:55 msgid "Fecha Caducidad" msgstr "Expiry Date " -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:979 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:110 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:32 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:35 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:39 msgid "Notificar" msgstr "Notify" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:980 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:111 #: ../../../modules/web/themes/material-blue/views/account/details.inc:9 #: ../../../modules/web/themes/material-blue/views/account/details.inc:11 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:184 @@ -3571,236 +3723,210 @@ msgstr "Notify" msgid "Visitas" msgstr "Visits" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1001 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:43 -msgid "Enlaces" -msgstr "Links" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1009 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:146 msgid "Buscar Enlace" msgstr "Search for Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1020 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1021 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:161 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:162 msgid "Nuevo Enlace" msgstr "New Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1032 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1033 -#: ../../../modules/web/Controllers/PublicLinkController.php:343 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:179 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:180 +#: ../../../modules/web/Controllers/PublicLinkController.php:336 msgid "Ver Enlace" msgstr "View Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1042 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1043 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:195 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:196 msgid "Renovar Enlace" msgstr "Renew Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1053 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1054 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:212 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:213 msgid "Eliminar Enlace" msgstr "Delete Link" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1097 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:132 #: ../../../config/actions.xml:517 msgid "Buscar Etiqueta" msgstr "Search for Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1108 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1109 -#: ../../../modules/web/Controllers/TagController.php:99 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:147 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:148 +#: ../../../modules/web/Controllers/TagController.php:98 #: ../../../config/actions.xml:493 msgid "Nueva Etiqueta" msgstr "New Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1120 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1121 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:165 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:166 #: ../../../modules/web/Controllers/TagController.php:157 #: ../../../config/actions.xml:505 msgid "Editar Etiqueta" msgstr "Edit Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1131 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1132 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:182 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:183 #: ../../../config/actions.xml:511 msgid "Eliminar Etiqueta" msgstr "Delete Tag" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1152 -msgid "Plugin" -msgstr "Plugin" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1161 -msgid "No disponible" -msgstr "Unavailable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1171 -msgid "Plugins" -msgstr "Plugins" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:116 +#: ../../../modules/web/Controllers/UserProfileController.php:216 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:123 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:125 +msgid "Perfil" +msgstr "Profile" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1179 -#: ../../../config/actions.xml:535 -msgid "Buscar Plugin" -msgstr "Search for Plugin" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:154 +#: ../../../config/actions.xml:589 +msgid "Buscar Usuario" +msgstr "Search for User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1190 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1191 -#: ../../../modules/web/Controllers/PluginController.php:120 -#: ../../../config/actions.xml:529 -msgid "Ver Plugin" -msgstr "View Plugin" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1201 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1202 -msgid "Habilitar" -msgstr "Enable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1214 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1215 -msgid "Deshabilitar" -msgstr "Disable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1227 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1228 -msgid "Restablecer Datos" -msgstr "Reset Data" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1249 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:138 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:140 -msgid "ID" -msgstr "ID" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1250 -msgid "Fecha / Hora" -msgstr "Date / Time" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1251 -msgid "Nivel" -msgstr "Level" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1252 -msgid "Evento" -msgstr "Event" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1254 -msgid "IP" -msgstr "IP" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:169 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:170 +#: ../../../modules/web/Controllers/UserController.php:105 +#: ../../../config/actions.xml:565 +msgid "Nuevo Usuario" +msgstr "New User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1303 -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:330 -#: ../../../modules/web/themes/material-blue/views/eventlog/index.inc:1 -#: ../../../config/actions.xml:127 -msgid "Registro de Eventos" -msgstr "Event Log" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1311 -msgid "Buscar Evento" -msgstr "Search for Events" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1320 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1321 -msgid "Refrescar" -msgstr "Refresh" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1332 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1333 -msgid "Vaciar registro de eventos" -msgstr "Clear event log" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1361 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:28 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:35 -msgid "Componente" -msgstr "Component" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1375 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:104 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:108 -msgid "Leída" -msgstr "Read" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1376 -msgid "Sólo Admins" -msgstr "Only Admins" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:187 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:188 +#: ../../../modules/web/Controllers/UserController.php:190 +#: ../../../config/actions.xml:571 +msgid "Editar Usuario" +msgstr "Edit User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1387 -#: ../../../modules/web/themes/material-blue/inc/Icons.php:67 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:104 -#: ../../../modules/web/themes/material-blue/views/notification/index.inc:1 -#: ../../../config/actions.xml:667 -msgid "Notificaciones" -msgstr "Notifications" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:204 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:205 +#: ../../../config/actions.xml:577 +msgid "Eliminar Usuario" +msgstr "Delete User" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:221 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:222 +#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:440 +msgid "Importar usuarios de LDAP" +msgstr "Import users from LDAP" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:236 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:237 +msgid "Ver Detalles de Usuario" +msgstr "View User Details" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:253 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:254 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:62 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:120 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:126 +msgid "Cambiar Clave de Usuario" +msgstr "Change User's Password" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1395 -#: ../../../config/actions.xml:829 -msgid "Buscar Notificación" -msgstr "Search for Notification" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1407 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1408 -#: ../../../modules/web/Controllers/NotificationController.php:181 -msgid "Nueva Notificación" -msgstr "New Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:136 +#: ../../../config/actions.xml:619 +msgid "Buscar Grupo" +msgstr "Search for Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1420 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1421 -#: ../../../modules/web/Controllers/NotificationController.php:105 -#: ../../../config/actions.xml:799 -msgid "Ver Notificación" -msgstr "View Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:151 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:152 +#: ../../../modules/web/Controllers/UserGroupController.php:106 +#: ../../../config/actions.xml:601 +msgid "Nuevo Grupo" +msgstr "New Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1430 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1431 -#: ../../../config/actions.xml:823 -msgid "Marcar Notificación" -msgstr "Checkout Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:169 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:170 +#: ../../../modules/web/Controllers/UserGroupController.php:319 +#: ../../../config/actions.xml:595 +msgid "Ver Grupo" +msgstr "View Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1442 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1443 -#: ../../../modules/web/Controllers/NotificationController.php:213 -#: ../../../config/actions.xml:811 -msgid "Editar Notificación" -msgstr "Edit Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:186 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:187 +#: ../../../modules/web/Controllers/UserGroupController.php:171 +#: ../../../config/actions.xml:607 +msgid "Editar Grupo" +msgstr "Edit Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1453 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1454 -#: ../../../config/actions.xml:817 -msgid "Eliminar Notificación" -msgstr "Delete Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:203 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:204 +#: ../../../config/actions.xml:613 +msgid "Eliminar Grupo" +msgstr "Delete Group" -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:261 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:278 +msgid "Perfiles" +msgstr "Profiles" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:134 +#: ../../../config/actions.xml:649 +msgid "Buscar Perfil" +msgstr "Search for Profile" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:150 +#: ../../../modules/web/Controllers/UserProfileController.php:100 +#: ../../../config/actions.xml:631 +msgid "Nuevo Perfil" +msgstr "New Profile" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:167 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:168 +msgid "Ver Detalles de Perfil" +msgstr "View Profile Details" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:184 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:185 +#: ../../../modules/web/Controllers/UserProfileController.php:166 +#: ../../../config/actions.xml:637 +msgid "Editar Perfil" +msgstr "Edit Profile" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:201 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:202 +#: ../../../config/actions.xml:643 +msgid "Eliminar Perfil" +msgstr "Delete Profile" + +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:262 #: ../../../modules/web/themes/material-blue/inc/Icons.php:60 msgid "Buscar" msgstr "Search" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:288 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:289 #: ../../../config/actions.xml:103 msgid "Usuarios y Accesos" msgstr "Users and Accesses" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:302 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:303 #: ../../../config/actions.xml:43 msgid "Elementos y Personalización" msgstr "Items and Customizations" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:316 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:317 #: ../../../modules/web/themes/material-blue/inc/Icons.php:63 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:21 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:23 @@ -3808,54 +3934,32 @@ msgstr "Items and Customizations" msgid "Configuración" msgstr "Configuration" -#: ../../../modules/web/Controllers/InstallController.php:62 -msgid "Versión de PHP requerida >= " -msgstr "Required PHP version >=" - -#: ../../../modules/web/Controllers/InstallController.php:73 +#: ../../../modules/web/Controllers/InstallController.php:59 msgid "Módulo no disponible" msgstr "Module unavailable" -#: ../../../modules/web/Controllers/InstallController.php:74 +#: ../../../modules/web/Controllers/InstallController.php:60 msgid "Sin este módulo la aplicación puede no funcionar correctamente." msgstr "Without this module the application could not run correctly" -#: ../../../modules/web/Controllers/InstallController.php:82 -msgid "La version de PHP es vulnerable al ataque NULL Byte (CVE-2006-7243)" -msgstr "This PHP version is vulnerable to NULL Byte attack CVE-2006-7243)" - -#: ../../../modules/web/Controllers/InstallController.php:83 -msgid "Actualice la versión de PHP para usar sysPass de forma segura" -msgstr "Please update PHP version to run sysPass in a secure way" - #: ../../../modules/web/Controllers/InstallController.php:89 -msgid "No se encuentra el generador de números aleatorios." -msgstr "Cannot find random number generator." - -#: ../../../modules/web/Controllers/InstallController.php:90 -msgid "" -"Sin esta función un atacante puede utilizar su cuenta al resetear la clave" -msgstr "" -"Without this function, an attacker could take your account on password reset." - -#: ../../../modules/web/Controllers/InstallController.php:121 msgid "Instalación finalizada" msgstr "Installation finished" -#: ../../../modules/web/Controllers/LoginController.php:104 +#: ../../../modules/web/Controllers/LoginController.php:101 msgid "Finalizar sesión" msgstr "Logout session" -#: ../../../modules/web/Controllers/LoginController.php:106 +#: ../../../modules/web/Controllers/LoginController.php:103 msgid "Tiempo inactivo" msgstr "Inactive time" -#: ../../../modules/web/Controllers/LoginController.php:107 +#: ../../../modules/web/Controllers/LoginController.php:104 msgid "Tiempo total" msgstr "Total time" -#: ../../../modules/web/Controllers/NotificationController.php:252 -#: ../../../modules/web/Controllers/NotificationController.php:255 +#: ../../../modules/web/Controllers/NotificationController.php:251 +#: ../../../modules/web/Controllers/NotificationController.php:254 msgid "Notificaciones eliminadas" msgstr "Notifications deleted" @@ -3864,82 +3968,82 @@ msgstr "Notifications deleted" msgid "Notificación eliminada" msgstr "Notification deleted" -#: ../../../modules/web/Controllers/NotificationController.php:296 -#: ../../../modules/web/Controllers/NotificationController.php:300 +#: ../../../modules/web/Controllers/NotificationController.php:297 +#: ../../../modules/web/Controllers/NotificationController.php:301 msgid "Notificación leída" msgstr "Notification read" -#: ../../../modules/web/Controllers/NotificationController.php:326 -#: ../../../modules/web/Controllers/NotificationController.php:329 +#: ../../../modules/web/Controllers/NotificationController.php:327 +#: ../../../modules/web/Controllers/NotificationController.php:330 msgid "Notificación creada" msgstr "Notification created" -#: ../../../modules/web/Controllers/NotificationController.php:357 #: ../../../modules/web/Controllers/NotificationController.php:360 +#: ../../../modules/web/Controllers/NotificationController.php:363 msgid "Notificación actualizada" msgstr "Notification updated" -#: ../../../modules/web/Controllers/PluginController.php:176 #: ../../../modules/web/Controllers/PluginController.php:179 +#: ../../../modules/web/Controllers/PluginController.php:182 msgid "Plugin habilitado" msgstr "Plugin enabled" -#: ../../../modules/web/Controllers/PluginController.php:199 -#: ../../../modules/web/Controllers/PluginController.php:202 +#: ../../../modules/web/Controllers/PluginController.php:204 +#: ../../../modules/web/Controllers/PluginController.php:207 msgid "Plugin deshabilitado" msgstr "Plugin disabled" -#: ../../../modules/web/Controllers/PluginController.php:222 -#: ../../../modules/web/Controllers/PluginController.php:225 +#: ../../../modules/web/Controllers/PluginController.php:229 +#: ../../../modules/web/Controllers/PluginController.php:232 msgid "Plugin restablecido" msgstr "Plugin reset" -#: ../../../modules/web/Controllers/PublicLinkController.php:105 +#: ../../../modules/web/Controllers/PublicLinkController.php:104 msgid "Nuevo Enlace Público" msgstr "New Public Link" -#: ../../../modules/web/Controllers/PublicLinkController.php:193 +#: ../../../modules/web/Controllers/PublicLinkController.php:191 msgid "Editar Enlace Público" msgstr "Edit Public Link" +#: ../../../modules/web/Controllers/PublicLinkController.php:229 #: ../../../modules/web/Controllers/PublicLinkController.php:232 -#: ../../../modules/web/Controllers/PublicLinkController.php:235 msgid "Enlaces eliminados" msgstr "Links deleted" -#: ../../../modules/web/Controllers/PublicLinkController.php:243 -#: ../../../modules/web/Controllers/PublicLinkController.php:247 +#: ../../../modules/web/Controllers/PublicLinkController.php:240 +#: ../../../modules/web/Controllers/PublicLinkController.php:244 msgid "Enlace eliminado" msgstr "Link deleted" -#: ../../../modules/web/Controllers/PublicLinkController.php:276 -#: ../../../modules/web/Controllers/PublicLinkController.php:312 +#: ../../../modules/web/Controllers/PublicLinkController.php:270 +#: ../../../modules/web/Controllers/PublicLinkController.php:305 msgid "Enlace creado" msgstr "Link created" -#: ../../../modules/web/Controllers/StatusController.php:90 +#: ../../../modules/web/Controllers/StatusController.php:91 msgid "Versión no disponible" msgstr "Version unavailable" -#: ../../../modules/web/Controllers/StatusController.php:135 +#: ../../../modules/web/Controllers/StatusController.php:136 msgid "Notificaciones no disponibles" msgstr "Notifications not available" -#: ../../../modules/web/Controllers/TagController.php:196 +#: ../../../modules/web/Controllers/TagController.php:195 msgid "Etiquetas eliminadas" msgstr "Tags deleted" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/TagController.php:282 +#: ../../../modules/web/Controllers/TagController.php:283 #: ../../../config/actions.xml:499 msgid "Ver Etiqueta" msgstr "View Tag" -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:66 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:68 msgid "Configuración actualizada" msgstr "Configuration updated" -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:70 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:72 msgid "Error al guardar la configuración" msgstr "Error while saving the configuration" @@ -3947,66 +4051,66 @@ msgstr "Error while saving the configuration" msgid "Error al actualizar los datos del campo personalizado" msgstr "Error while updating custom field's data" -#: ../../../modules/web/Controllers/UpgradeController.php:66 +#: ../../../modules/web/Controllers/UpgradeController.php:65 msgid "Es necesario confirmar la actualización" msgstr "The updating need to be confirmed" -#: ../../../modules/web/Controllers/UpgradeController.php:70 +#: ../../../modules/web/Controllers/UpgradeController.php:69 msgid "Código de seguridad incorrecto" msgstr "Wrong security code" -#: ../../../modules/web/Controllers/UpgradeController.php:91 +#: ../../../modules/web/Controllers/UpgradeController.php:90 #: ../../../modules/web/themes/material-blue/views/login/index.inc:78 msgid "Aplicación actualizada correctamente" msgstr "Application successfully updated" -#: ../../../modules/web/Controllers/UpgradeController.php:91 +#: ../../../modules/web/Controllers/UpgradeController.php:90 msgid "En 5 segundos será redirigido al login" msgstr "You will be redirected to log in within 5 seconds" -#: ../../../modules/web/Controllers/UserController.php:268 -#: ../../../modules/web/Controllers/UserController.php:271 +#: ../../../modules/web/Controllers/UserController.php:266 +#: ../../../modules/web/Controllers/UserController.php:269 msgid "Usuarios eliminados" msgstr "Users deleted" -#: ../../../modules/web/Controllers/UserController.php:279 -#: ../../../modules/web/Controllers/UserController.php:283 +#: ../../../modules/web/Controllers/UserController.php:277 +#: ../../../modules/web/Controllers/UserController.php:281 msgid "Usuario eliminado" msgstr "User deleted" -#: ../../../modules/web/Controllers/UserController.php:313 -#: ../../../modules/web/Controllers/UserController.php:319 +#: ../../../modules/web/Controllers/UserController.php:311 +#: ../../../modules/web/Controllers/UserController.php:317 msgid "Usuario creado" msgstr "User added" -#: ../../../modules/web/Controllers/UserController.php:374 -#: ../../../modules/web/Controllers/UserController.php:380 +#: ../../../modules/web/Controllers/UserController.php:371 +#: ../../../modules/web/Controllers/UserController.php:377 msgid "Usuario actualizado" msgstr "User updated" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/UserController.php:439 +#: ../../../modules/web/Controllers/UserController.php:438 #: ../../../config/actions.xml:559 msgid "Ver Usuario" msgstr "View User" -#: ../../../modules/web/Controllers/UserGroupController.php:209 -#: ../../../modules/web/Controllers/UserGroupController.php:212 +#: ../../../modules/web/Controllers/UserGroupController.php:208 +#: ../../../modules/web/Controllers/UserGroupController.php:211 msgid "Grupos eliminados" msgstr "Groups deleted" -#: ../../../modules/web/Controllers/UserGroupController.php:220 -#: ../../../modules/web/Controllers/UserGroupController.php:224 +#: ../../../modules/web/Controllers/UserGroupController.php:219 +#: ../../../modules/web/Controllers/UserGroupController.php:223 msgid "Grupo eliminado" msgstr "Group deleted" -#: ../../../modules/web/Controllers/UserGroupController.php:254 -#: ../../../modules/web/Controllers/UserGroupController.php:258 +#: ../../../modules/web/Controllers/UserGroupController.php:253 +#: ../../../modules/web/Controllers/UserGroupController.php:257 msgid "Grupo creado" msgstr "Group added" -#: ../../../modules/web/Controllers/UserGroupController.php:294 -#: ../../../modules/web/Controllers/UserGroupController.php:298 +#: ../../../modules/web/Controllers/UserGroupController.php:292 +#: ../../../modules/web/Controllers/UserGroupController.php:296 msgid "Grupo actualizado" msgstr "Group updated" @@ -4035,13 +4139,13 @@ msgid "En breve recibirá un correo para completar la solicitud." msgstr "You will receive an email to complete the request shortly." #: ../../../modules/web/Controllers/UserPassResetController.php:169 -#: ../../../modules/web/Forms/AuthTokenForm.php:104 +#: ../../../modules/web/Forms/AuthTokenForm.php:101 #: ../../../modules/web/Forms/UserForm.php:157 msgid "La clave no puede estar en blanco" msgstr "Password cannot be blank" -#: ../../../modules/web/Controllers/UserProfileController.php:204 -#: ../../../modules/web/Controllers/UserProfileController.php:207 +#: ../../../modules/web/Controllers/UserProfileController.php:203 +#: ../../../modules/web/Controllers/UserProfileController.php:206 msgid "Perfiles eliminados" msgstr "Profiles deleted" @@ -4050,16 +4154,16 @@ msgstr "Profiles deleted" msgid "Perfil eliminado" msgstr "Profile deleted" -#: ../../../modules/web/Controllers/UserProfileController.php:249 +#: ../../../modules/web/Controllers/UserProfileController.php:248 msgid "Perfil creado" msgstr "Profile added" -#: ../../../modules/web/Controllers/UserProfileController.php:286 +#: ../../../modules/web/Controllers/UserProfileController.php:284 msgid "Perfil actualizado" msgstr "Profile updated" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/UserProfileController.php:309 +#: ../../../modules/web/Controllers/UserProfileController.php:307 #: ../../../config/actions.xml:625 msgid "Ver Perfil" msgstr "View Profile" @@ -4093,11 +4197,11 @@ msgstr "An username is needed" msgid "Es necesario una categoría" msgstr "A category is needed" -#: ../../../modules/web/Forms/AuthTokenForm.php:90 +#: ../../../modules/web/Forms/AuthTokenForm.php:91 msgid "Usuario no indicado" msgstr "User not set" -#: ../../../modules/web/Forms/AuthTokenForm.php:94 +#: ../../../modules/web/Forms/AuthTokenForm.php:95 msgid "Acción no indicada" msgstr "Action not set" @@ -4578,29 +4682,29 @@ msgid "Javascript es necesario para el correcto funcionamiento" msgstr "Javascript is needed in order to run correctly" #: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:40 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:109 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:110 #, php-format msgid "Hay %d notificaciones pendientes" msgstr "There are %d unread notifications" #: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:42 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:111 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:112 msgid "No hay no hay notificaciones pendientes" msgstr "There aren't any pending notifications" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:68 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:129 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:69 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:131 msgid "Preferencias de usuario" msgstr "User preferences" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:72 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:75 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:147 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:150 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:73 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:76 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:149 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:152 msgid "Salir" msgstr "Sign Out" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:163 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:165 #: ../../../modules/web/themes/material-blue/views/_partials/footer.inc:43 msgid "Demo" msgstr "Demo" @@ -4624,6 +4728,11 @@ msgstr "Help :: FAQ :: Changelog" msgid "Un proyecto de cygnux.org" msgstr "A cygnux.org project" +#: ../../../modules/web/themes/material-blue/views/_partials/no_records_found.inc:4 +#: ../../../modules/web/themes/material-blue/views/account/search-index.inc:11 +msgid "No se encontraron registros" +msgstr "No records found" + #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:77 #: ../../../modules/web/themes/material-blue/views/account/account.inc:160 #: ../../../modules/web/themes/material-blue/views/account/account.inc:167 @@ -4802,10 +4911,6 @@ msgstr "Drop files here (max. 5) or click to select" msgid "Tamaño máximo de archivo: %d MB" msgstr "Maximum file size: %d MB" -#: ../../../modules/web/themes/material-blue/views/account/search-index.inc:11 -msgid "No se encontraron registros" -msgstr "No records found" - #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:24 msgid "Buscar en Wiki" msgstr "Search in Wiki" @@ -5495,8 +5600,8 @@ msgstr "Site" #: ../../../modules/web/themes/material-blue/views/config/general-site.inc:28 #: ../../../modules/web/themes/material-blue/views/config/general-site.inc:42 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:82 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:96 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:84 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:98 #: ../../../modules/web/themes/material-blue/views/install/index.inc:134 #: ../../../modules/web/themes/material-blue/views/install/index.inc:136 #: ../../../modules/web/themes/material-blue/views/usersettings/general.inc:16 @@ -5712,51 +5817,51 @@ msgstr "CSV delimiter" msgid "Sólo es necesario para archivos CSV." msgstr "It's only needed for CSV files." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:3 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:5 msgid "Información de la Aplicación" msgstr "Application Information" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:9 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:12 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:11 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:14 msgid "Versión sysPass" msgstr "sysPass version" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:19 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:22 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:21 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:24 msgid "Base de Datos" msgstr "Database" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:33 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:36 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:35 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:38 msgid "PHP" msgstr "PHP" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:40 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:42 msgid "Extensiones" msgstr "Extensions" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:44 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:46 msgid "Extensiones no disponibles" msgstr "Unavailable extensions" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:48 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:50 msgid "Memoria Usada" msgstr "Used Memory" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:53 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:55 msgid "OP Cache" msgstr "OP Cache" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:72 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:75 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:74 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:77 msgid "Copia de Configuración" msgstr "Configuration Backup" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:87 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:89 msgid "Indica si el idioma se encuentra disponible" msgstr "Tells whether the language is available or not." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:91 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:93 msgid "" "Si no está instalado, es necesario instalar las locales en el sistema " "operativo. Más información en Wiki." @@ -5764,17 +5869,17 @@ msgstr "" "If it is not installed, you would need install the right operating system " "locales. More info at Wiki." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:103 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:113 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:105 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 msgid "Sesión Encriptada" msgstr "Encrypted Session" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:108 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:110 msgid "Indica si los datos de la sesión están encriptados en el servidor" msgstr "Tells whether the session data are encrypted in the server or not" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:120 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:123 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:122 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:125 msgid "Plugins Cargados" msgstr "Loaded Plugins" @@ -6959,6 +7064,52 @@ msgstr "Text" msgid "Link" msgstr "Link" +#~ msgid "El archivo de estructura de la BBDD no existe" +#~ msgstr "The database structure file does not exist" + +#~ msgid "No es posible crear la BBDD de la aplicación. Descárguela de nuevo." +#~ msgstr "" +#~ "Unable to create the application database. Please download it again." + +#~ msgid "No es necesario actualizar la Base de Datos." +#~ msgstr "Database update not needed." + +#~ msgid "Error al leer datos del archivo (%s)" +#~ msgstr "Error while reading file data (%s)" + +#~ msgid "Error al eliminar el archivo (%s)" +#~ msgstr "Error while deleting the file (%s)" + +#~ msgid "No es posible leer/escribir el archivo (%s)" +#~ msgstr "Unable to read/write the file (%s)" + +#~ msgid "Error al escribir datos en el archivo (%s)" +#~ msgstr "Error while writing data to file (%s)" + +#~ msgid "Extensión '%s' no cargada" +#~ msgstr "Extension '%s' not loaded" + +#~ msgid "Respuesta" +#~ msgstr "Response" + +#~ msgid "Versión de PHP requerida >= " +#~ msgstr "Required PHP version >=" + +#~ msgid "La version de PHP es vulnerable al ataque NULL Byte (CVE-2006-7243)" +#~ msgstr "This PHP version is vulnerable to NULL Byte attack CVE-2006-7243)" + +#~ msgid "Actualice la versión de PHP para usar sysPass de forma segura" +#~ msgstr "Please update PHP version to run sysPass in a secure way" + +#~ msgid "No se encuentra el generador de números aleatorios." +#~ msgstr "Cannot find random number generator." + +#~ msgid "" +#~ "Sin esta función un atacante puede utilizar su cuenta al resetear la clave" +#~ msgstr "" +#~ "Without this function, an attacker could take your account on password " +#~ "reset." + #~ msgid "Origen" #~ msgstr "Source" @@ -7236,9 +7387,6 @@ msgstr "Link" #~ msgid "CC" #~ msgstr "CC" -#~ msgid "Error al eliminar archivos asociados a la cuenta" -#~ msgstr "Error while deleting the account's files" - #~ msgid "Migrar Perfiles" #~ msgstr "Migrate Profiles" diff --git a/app/locales/en_US/LC_MESSAGES/messages.mo b/app/locales/en_US/LC_MESSAGES/messages.mo index 5e39633e035d3bde40810eba1e88b289d88e3aba..fc799ef0ddd5bd4dd4e4ce3d2814863edff1817d 100644 GIT binary patch delta 29240 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 diff --git a/app/locales/en_US/LC_MESSAGES/messages.po b/app/locales/en_US/LC_MESSAGES/messages.po index 39405826..d9da7b08 100644 --- a/app/locales/en_US/LC_MESSAGES/messages.po +++ b/app/locales/en_US/LC_MESSAGES/messages.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: sysPass\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-02 00:43+0100\n" -"PO-Revision-Date: 2018-08-02 00:46+0100\n" +"POT-Creation-Date: 2018-08-28 00:31+0100\n" +"PO-Revision-Date: 2018-08-28 00:31+0100\n" "Last-Translator: nuxsmin \n" "Language-Team: nuxsmin@syspass.org\n" "Language: en_US\n" @@ -25,13 +25,12 @@ msgstr "" "X-Poedit-SearchPath-1: ../../../../lib\n" "X-Poedit-SearchPath-2: ../../../config\n" -#: ../../../../lib/SP/Bootstrap.php:262 +#: ../../../../lib/SP/Bootstrap.php:265 #, php-format msgid "Versión de PHP requerida >= %s <= %s" msgstr "Required PHP version >= %s <= %s" -#: ../../../../lib/SP/Bootstrap.php:264 -#: ../../../modules/web/Controllers/InstallController.php:63 +#: ../../../../lib/SP/Bootstrap.php:267 msgid "" "Actualice la versión de PHP para que la aplicación funcione correctamente" msgstr "Please update the PHP version to run sysPass" @@ -84,32 +83,32 @@ msgid "Acceso denegado" msgstr "Access denied" #: ../../../../lib/SP/Core/Acl/Acl.php:281 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:882 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:106 #: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:31 #: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:33 msgid "Acción" msgstr "Action" #: ../../../../lib/SP/Core/Acl/Acl.php:282 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:406 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:410 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:165 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:114 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:126 -#: ../../../../lib/SP/Services/Auth/LoginService.php:212 -#: ../../../../lib/SP/Services/Auth/LoginService.php:230 +#: ../../../../lib/SP/Services/Auth/LoginService.php:211 +#: ../../../../lib/SP/Services/Auth/LoginService.php:229 #: ../../../../lib/SP/Services/Auth/LoginService.php:368 #: ../../../../lib/SP/Services/Auth/LoginService.php:435 #: ../../../../lib/SP/Services/Auth/LoginService.php:543 #: ../../../../lib/SP/Services/Auth/LoginService.php:586 #: ../../../../lib/SP/Services/Ldap/LdapImportService.php:230 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:235 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:881 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:978 -#: ../../../modules/web/Controllers/LoginController.php:105 -#: ../../../modules/web/Controllers/UserController.php:280 -#: ../../../modules/web/Controllers/UserController.php:314 -#: ../../../modules/web/Controllers/UserController.php:375 -#: ../../../modules/web/Controllers/UserController.php:412 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:109 +#: ../../../modules/web/Controllers/LoginController.php:102 +#: ../../../modules/web/Controllers/UserController.php:278 +#: ../../../modules/web/Controllers/UserController.php:312 +#: ../../../modules/web/Controllers/UserController.php:372 +#: ../../../modules/web/Controllers/UserController.php:411 #: ../../../modules/web/Controllers/UserPassResetController.php:187 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:55 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:61 @@ -120,7 +119,7 @@ msgstr "Action" #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:63 #: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:20 #: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:65 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:50 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:52 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:129 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:104 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:111 @@ -140,7 +139,7 @@ msgstr "Action" msgid "Usuario" msgstr "User" -#: ../../../../lib/SP/Core/Acl/Actions.php:174 +#: ../../../../lib/SP/Core/Acl/Actions.php:176 msgid "Acción no encontrada" msgstr "Action not found" @@ -187,18 +186,18 @@ msgstr "The key file does not exist" #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:333 #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:388 #: ../../../../lib/SP/Repositories/AuthToken/AuthTokenRepository.php:416 -#: ../../../../lib/SP/Services/Account/AccountService.php:231 -#: ../../../../lib/SP/Services/Account/AccountService.php:236 -#: ../../../../lib/SP/Services/Api/ApiService.php:126 -#: ../../../../lib/SP/Services/Api/ApiService.php:326 -#: ../../../../lib/SP/Services/Api/ApiService.php:334 -#: ../../../../lib/SP/Services/Auth/LoginService.php:183 -#: ../../../../lib/SP/Services/Auth/LoginService.php:334 +#: ../../../../lib/SP/Services/Account/AccountService.php:232 +#: ../../../../lib/SP/Services/Account/AccountService.php:237 +#: ../../../../lib/SP/Services/Api/ApiService.php:129 +#: ../../../../lib/SP/Services/Api/ApiService.php:227 +#: ../../../../lib/SP/Services/Api/ApiService.php:235 +#: ../../../../lib/SP/Services/Auth/LoginService.php:182 +#: ../../../../lib/SP/Services/Auth/LoginService.php:333 #: ../../../../lib/SP/Services/Auth/LoginService.php:482 #: ../../../../lib/SP/Services/Auth/LoginService.php:487 #: ../../../../lib/SP/Services/Auth/LoginService.php:519 #: ../../../../lib/SP/Services/Auth/LoginService.php:626 -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:292 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:306 #: ../../../../lib/SP/Services/CustomField/CustomFieldService.php:203 #: ../../../../lib/SP/Services/Export/XmlVerifyService.php:108 #: ../../../../lib/SP/Services/Import/XmlFileImport.php:79 @@ -224,17 +223,17 @@ msgstr "An object is needed" msgid "Observador no inicializado" msgstr "Observer not initialized" -#: ../../../../lib/SP/Core/UI/Theme.php:181 +#: ../../../../lib/SP/Core/UI/Theme.php:191 msgid "Clase no válida para iconos" msgstr "Invalid icons class" #: ../../../../lib/SP/DataModel/PublicLinkListData.php:88 -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "ON" msgstr "ON" #: ../../../../lib/SP/DataModel/PublicLinkListData.php:88 -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "OFF" msgstr "OFF" @@ -251,15 +250,19 @@ msgstr "Invalid IP" msgid "No es posible obtener la plantilla \"%s\" : %s" msgstr "Unable to retrieve the \"%s\" template: %s" +#: ../../../../lib/SP/Http/Json.php:179 +msgid "Error de codificación" +msgstr "Encoding error" + #: ../../../../lib/SP/Http/XMLRPCResponseParse.php:69 msgid "Respuesta XML-RPC inválida" msgstr "Invalid XML-RPC response" -#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:65 +#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:64 msgid "La sesión no se ha iniciado o ha caducado" msgstr "Session not started or timed out" -#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:115 +#: ../../../../lib/SP/Mvc/Controller/ControllerTrait.php:114 msgid "Acción Inválida" msgstr "Invalid Action" @@ -302,25 +305,25 @@ msgstr "New Plugin" #: ../../../../lib/SP/Plugin/PluginManager.php:246 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:221 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:76 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:179 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:263 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:351 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:437 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:496 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:573 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:701 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:792 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1074 -#: ../../../modules/web/Controllers/UserGroupController.php:255 -#: ../../../modules/web/Controllers/UserGroupController.php:295 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:100 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:114 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:105 +#: ../../../modules/web/Controllers/UserGroupController.php:254 +#: ../../../modules/web/Controllers/UserGroupController.php:293 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:22 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:33 #: ../../../modules/web/themes/material-blue/views/account/account-link.inc:15 #: ../../../modules/web/themes/material-blue/views/account/account-request.inc:18 #: ../../../modules/web/themes/material-blue/views/account/account.inc:59 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:43 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:28 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:30 #: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:17 #: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:20 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:20 @@ -355,8 +358,8 @@ msgstr "Unable to connect to the LDAP server" #: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:163 #: ../../../modules/web/themes/material-blue/views/config/general-events.inc:68 #: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:37 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:62 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:65 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:64 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:67 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:74 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:99 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:57 @@ -374,26 +377,26 @@ msgstr "The LDAP parameters are not set" msgid "Error al conectar (BIND)" msgstr "Connection error (BIND)" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:405 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:411 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:409 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:416 msgid "Error al localizar el usuario en LDAP" msgstr "Error while searching the user on LDAP" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:481 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:487 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:493 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:500 msgid "Error al buscar RDN de grupo" msgstr "Error while searching the group RDN" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:482 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:494 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:140 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:154 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapMsAds.php:166 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:115 #: ../../../../lib/SP/Providers/Auth/Ldap/LdapStd.php:127 #: ../../../../lib/SP/Services/Ldap/LdapImportService.php:137 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:576 -#: ../../../modules/web/Controllers/UserGroupController.php:221 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:135 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:117 +#: ../../../modules/web/Controllers/UserGroupController.php:220 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:137 #: ../../../modules/web/themes/material-blue/views/_partials/footer.inc:15 #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:269 #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:272 @@ -404,8 +407,8 @@ msgstr "Error while searching the group RDN" msgid "Grupo" msgstr "Group" -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:546 -#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:551 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:543 +#: ../../../../lib/SP/Providers/Auth/Ldap/LdapBase.php:548 msgid "Error al buscar objetos en DN base" msgstr "Error while searching objects in base DN" @@ -427,12 +430,12 @@ msgstr "Error while searching users group" msgid "Usuario no pertenece al grupo" msgstr "The user doesn't belong to the group" -#: ../../../../lib/SP/Providers/Mail/MailHandler.php:95 +#: ../../../../lib/SP/Providers/Mail/MailHandler.php:87 #, php-format msgid "Realizado por: %s (%s)" msgstr "Performed by: %s (%s)" -#: ../../../../lib/SP/Providers/Mail/MailHandler.php:96 +#: ../../../../lib/SP/Providers/Mail/MailHandler.php:88 #, php-format msgid "Dirección IP: %s" msgstr "IP Address: %s" @@ -441,27 +444,27 @@ msgstr "IP Address: %s" msgid "No es posible inicializar" msgstr "Unable to initialize" -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:92 -#: ../../../modules/web/Controllers/AccountController.php:901 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:124 +#: ../../../modules/web/Controllers/AccountController.php:897 msgid "Solicitud" msgstr "Request" #. (itstool) path: action/text -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:93 -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:124 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:125 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:156 #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:74 -#: ../../../modules/web/Controllers/ConfigBackupController.php:122 +#: ../../../modules/web/Controllers/ConfigBackupController.php:120 #: ../../../modules/web/Controllers/ConfigManagerController.php:167 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:456 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:88 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:21 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:390 #: ../../../config/actions.xml:13 msgid "Cuentas" msgstr "Accounts" -#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:123 +#: ../../../../lib/SP/Providers/Notification/NotificationHandler.php:155 #: ../../../modules/web/Controllers/NotificationController.php:267 -#: ../../../modules/web/Controllers/NotificationController.php:297 +#: ../../../modules/web/Controllers/NotificationController.php:298 msgid "Notificación" msgstr "Notification" @@ -482,39 +485,39 @@ msgid "Error al actualizar el historial" msgstr "Error while updating history" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:162 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:327 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:323 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:192 msgid "Error al eliminar la cuenta" msgstr "Error while deleting the account" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:292 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:459 -#: ../../../../lib/SP/Services/Account/AccountService.php:448 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:455 +#: ../../../../lib/SP/Services/Account/AccountService.php:480 msgid "Error al eliminar las cuentas" msgstr "Error while deleting the accounts" #: ../../../../lib/SP/Repositories/Account/AccountHistoryRepository.php:413 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:239 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:264 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:235 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:260 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:219 msgid "Error al actualizar la clave" msgstr "Error while updating the password" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:204 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:200 msgid "Error al crear la cuenta" msgstr "Error while creating the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:307 -#: ../../../../lib/SP/Services/Account/AccountService.php:416 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:303 +#: ../../../../lib/SP/Services/Account/AccountService.php:445 msgid "Error al restaurar cuenta" msgstr "Error on restoring the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:389 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:385 msgid "Error al modificar la cuenta" msgstr "Error while updating the account" -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:409 -#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:575 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:405 +#: ../../../../lib/SP/Repositories/Account/AccountRepository.php:571 #: ../../../../lib/SP/Services/Account/AccountHistoryService.php:75 msgid "No se pudieron obtener los datos de la cuenta" msgstr "Error while retrieving the account data" @@ -918,32 +921,32 @@ msgstr "Update Master Password (H)" msgid "Errores al actualizar las claves de las cuentas del histórico" msgstr "Error while updating the accounts' passwords in history" -#: ../../../../lib/SP/Services/Account/AccountFileService.php:137 +#: ../../../../lib/SP/Services/Account/AccountFileService.php:145 msgid "Error al eliminar archivos" msgstr "Error while deleting the files" -#: ../../../../lib/SP/Services/Account/AccountFileService.php:156 +#: ../../../../lib/SP/Services/Account/AccountFileService.php:164 msgid "Archivo no encontrado" msgstr "File not found" -#: ../../../../lib/SP/Services/Account/AccountService.php:87 -#: ../../../../lib/SP/Services/Account/AccountService.php:504 -#: ../../../../lib/SP/Services/Account/AccountService.php:559 +#: ../../../../lib/SP/Services/Account/AccountService.php:88 +#: ../../../../lib/SP/Services/Account/AccountService.php:536 +#: ../../../../lib/SP/Services/Account/AccountService.php:591 msgid "La cuenta no existe" msgstr "The account doesn't exist" -#: ../../../../lib/SP/Services/Account/AccountService.php:174 -#: ../../../../lib/SP/Services/Account/AccountService.php:432 +#: ../../../../lib/SP/Services/Account/AccountService.php:175 +#: ../../../../lib/SP/Services/Account/AccountService.php:462 msgid "Cuenta no encontrada" msgstr "Account not found" -#: ../../../../lib/SP/Services/Account/AccountService.php:224 +#: ../../../../lib/SP/Services/Account/AccountService.php:225 msgid "Clave maestra no establecida" msgstr "Master password not set" #: ../../../../lib/SP/Services/Api/ApiRequest.php:79 #: ../../../../lib/SP/Services/Api/ApiRequest.php:113 -#: ../../../../lib/SP/Services/Api/ApiService.php:328 +#: ../../../../lib/SP/Services/Api/ApiService.php:229 msgid "Datos inválidos" msgstr "Invalid data" @@ -951,194 +954,23 @@ msgstr "Invalid data" msgid "Fomato incorrecto" msgstr "Invalid format" -#: ../../../../lib/SP/Services/Api/ApiService.php:91 -#: ../../../../lib/SP/Services/Auth/LoginService.php:133 +#: ../../../../lib/SP/Services/Api/ApiService.php:96 +#: ../../../../lib/SP/Services/Auth/LoginService.php:132 #: ../../../../lib/SP/Services/UserPassRecover/UserPassRecoverService.php:103 #: ../../../modules/web/Controllers/UserPassResetController.php:124 msgid "Intentos excedidos" msgstr "Attempts exceeded" -#: ../../../../lib/SP/Services/Api/ApiService.php:149 +#: ../../../../lib/SP/Services/Api/ApiService.php:152 msgid "Parámetros incorrectos" msgstr "Wrong parameters" -#: ../../../../lib/SP/Services/Api/ApiService.php:181 -#: ../../../../lib/SP/Services/Api/ApiService.php:196 -#: ../../../../lib/SP/Services/Api/ApiService.php:201 -msgid "Id de la cuenta" -msgstr "Account Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:182 -#: ../../../../lib/SP/Services/Api/ApiService.php:206 -msgid "Clave del token" -msgstr "Token's password" - -#: ../../../../lib/SP/Services/Api/ApiService.php:183 -msgid "Devolver detalles en la respuesta" -msgstr "Send details in the response" - -#: ../../../../lib/SP/Services/Api/ApiService.php:188 -#: ../../../../lib/SP/Services/Api/ApiService.php:225 -#: ../../../../lib/SP/Services/Api/ApiService.php:242 -#: ../../../../lib/SP/Services/Api/ApiService.php:260 -#: ../../../modules/web/themes/material-blue/views/account/search-searchbox.inc:16 -msgid "Texto a buscar" -msgstr "Text to search" - -#: ../../../../lib/SP/Services/Api/ApiService.php:189 -#: ../../../../lib/SP/Services/Api/ApiService.php:226 -#: ../../../../lib/SP/Services/Api/ApiService.php:243 -#: ../../../../lib/SP/Services/Api/ApiService.php:261 -msgid "Número de resultados a mostrar" -msgstr "Number of results to show" - -#: ../../../../lib/SP/Services/Api/ApiService.php:190 -msgid "Id de categoría a filtrar" -msgstr "Category Id to filter on" - -#: ../../../../lib/SP/Services/Api/ApiService.php:191 -msgid "Id de cliente a filtrar" -msgstr "Client Id to filter on" - -#: ../../../../lib/SP/Services/Api/ApiService.php:207 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:28 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:42 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:22 -#: ../../../modules/web/themes/material-blue/views/account/account-request.inc:24 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:67 -msgid "Nombre de cuenta" -msgstr "Account name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:208 -#: ../../../../lib/SP/Services/Api/ApiService.php:237 -msgid "Id de categoría" -msgstr "Category Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:209 -#: ../../../../lib/SP/Services/Api/ApiService.php:255 -msgid "Id de cliente" -msgstr "Client Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:210 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:66 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:72 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:83 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:82 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:85 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:93 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:147 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:155 -#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:31 -#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:288 -#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:291 -#: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:79 -#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:150 -#: ../../../modules/web/themes/material-blue/views/config/mail.inc:117 -#: ../../../modules/web/themes/material-blue/views/config/mail.inc:124 -#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:250 -#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:257 -#: ../../../modules/web/themes/material-blue/views/install/index.inc:42 -#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:47 -#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:54 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:94 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:102 -#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:38 -#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:45 -#: ../../../modules/web/themes/material-blue/views/login/index.inc:26 -#: ../../../modules/web/themes/material-blue/views/login/index.inc:88 -#: ../../../modules/web/themes/material-blue/views/userpassreset/reset.inc:20 -msgid "Clave" -msgstr "Password" - -#: ../../../../lib/SP/Services/Api/ApiService.php:211 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:99 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:141 -msgid "Usuario de acceso" -msgstr "Access user" - -#: ../../../../lib/SP/Services/Api/ApiService.php:212 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:86 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:128 -msgid "URL o IP de acceso" -msgstr "Access URL or IP" - -#: ../../../../lib/SP/Services/Api/ApiService.php:213 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:124 -#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:78 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:199 -msgid "Notas sobre la cuenta" -msgstr "Notes about the account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:214 -#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:126 -#: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:106 -msgid "Cuenta Privada" -msgstr "Private Account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:215 -#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:139 -msgid "Cuenta Privada Grupo" -msgstr "Private Account for Group" - -#: ../../../../lib/SP/Services/Api/ApiService.php:216 -#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:89 -#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:104 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:173 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:129 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:131 -msgid "Fecha Caducidad Clave" -msgstr "Password Expiry Date" - -#: ../../../../lib/SP/Services/Api/ApiService.php:217 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:228 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:230 -#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:9 -msgid "Cuenta Vinculada" -msgstr "Linked Account" - -#: ../../../../lib/SP/Services/Api/ApiService.php:231 -#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:24 -msgid "Nombre de la categoría" -msgstr "Category name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:232 -#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:36 -msgid "Descripción de la categoría" -msgstr "Category description" - -#: ../../../../lib/SP/Services/Api/ApiService.php:248 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:27 -msgid "Nombre del cliente" -msgstr "Client name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:249 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:40 -msgid "Descripción del cliente" -msgstr "Client description" - -#: ../../../../lib/SP/Services/Api/ApiService.php:250 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:181 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1377 -#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:63 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:92 -msgid "Global" -msgstr "Global" - -#: ../../../../lib/SP/Services/Api/ApiService.php:266 -#: ../../../modules/web/themes/material-blue/views/itemshow/tag.inc:24 -msgid "Nombre de la etiqueta" -msgstr "Tag name" - -#: ../../../../lib/SP/Services/Api/ApiService.php:271 -msgid "Id de etiqueta" -msgstr "Tag Id" - -#: ../../../../lib/SP/Services/Api/ApiService.php:285 +#: ../../../../lib/SP/Services/Api/ApiService.php:186 #: ../../../modules/api/Controllers/ControllerBase.php:146 msgid "Acceso no permitido" msgstr "Unauthorized access" -#: ../../../../lib/SP/Services/Auth/LoginService.php:153 +#: ../../../../lib/SP/Services/Auth/LoginService.php:152 #: ../../../../lib/SP/Services/Auth/LoginService.php:438 #: ../../../../lib/SP/Services/Auth/LoginService.php:445 #: ../../../../lib/SP/Services/Auth/LoginService.php:553 @@ -1148,37 +980,37 @@ msgstr "Unauthorized access" msgid "Login incorrecto" msgstr "Wrong login" -#: ../../../../lib/SP/Services/Auth/LoginService.php:211 -#: ../../../../lib/SP/Services/Auth/LoginService.php:218 +#: ../../../../lib/SP/Services/Auth/LoginService.php:210 +#: ../../../../lib/SP/Services/Auth/LoginService.php:217 msgid "Usuario deshabilitado" msgstr "User disabled" -#: ../../../../lib/SP/Services/Auth/LoginService.php:263 +#: ../../../../lib/SP/Services/Auth/LoginService.php:262 msgid "Usando clave temporal" msgstr "Using temporary password" -#: ../../../../lib/SP/Services/Auth/LoginService.php:271 -#: ../../../../lib/SP/Services/Auth/LoginService.php:277 -#: ../../../../lib/SP/Services/Auth/LoginService.php:290 -#: ../../../../lib/SP/Services/Auth/LoginService.php:296 +#: ../../../../lib/SP/Services/Auth/LoginService.php:270 +#: ../../../../lib/SP/Services/Auth/LoginService.php:276 +#: ../../../../lib/SP/Services/Auth/LoginService.php:289 +#: ../../../../lib/SP/Services/Auth/LoginService.php:295 msgid "Clave maestra incorrecta" msgstr "Wrong master password" -#: ../../../../lib/SP/Services/Auth/LoginService.php:285 -#: ../../../../lib/SP/Services/Auth/LoginService.php:304 +#: ../../../../lib/SP/Services/Auth/LoginService.php:284 +#: ../../../../lib/SP/Services/Auth/LoginService.php:303 #: ../../../../lib/SP/Services/User/UpdatedMasterPassException.php:45 #: ../../../../lib/SP/Util/ErrorUtil.php:144 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:67 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:141 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:68 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:142 #: ../../../modules/web/Controllers/Helpers/Account/AccountPasswordHelper.php:96 msgid "Clave maestra actualizada" msgstr "Master password updated" -#: ../../../../lib/SP/Services/Auth/LoginService.php:310 +#: ../../../../lib/SP/Services/Auth/LoginService.php:309 msgid "Es necesaria su clave anterior" msgstr "Your previous password is needed" -#: ../../../../lib/SP/Services/Auth/LoginService.php:322 +#: ../../../../lib/SP/Services/Auth/LoginService.php:321 msgid "La clave maestra no ha sido guardada o es incorrecta" msgstr "The Master Password either is not saved or is wrong" @@ -1186,10 +1018,10 @@ msgstr "The Master Password either is not saved or is wrong" #: ../../../../lib/SP/Services/Auth/LoginService.php:496 #: ../../../../lib/SP/Services/Auth/LoginService.php:542 #: ../../../../lib/SP/Services/Auth/LoginService.php:585 -#: ../../../modules/web/Controllers/AccountFileController.php:225 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:265 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:352 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1360 +#: ../../../modules/web/Controllers/AccountFileController.php:233 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:119 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:32 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:34 #: ../../../modules/web/themes/material-blue/views/notification/notification.inc:16 @@ -1217,13 +1049,13 @@ msgstr "The user has no associated groups" msgid "Autentificación" msgstr "Authentication" -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:126 -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:258 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:134 #: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:272 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:286 msgid "Token no encontrado" msgstr "Token not found" -#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:145 +#: ../../../../lib/SP/Services/AuthToken/AuthTokenService.php:153 msgid "Error al eliminar tokens" msgstr "Error while removing the tokens" @@ -1240,9 +1072,9 @@ msgid "Error al realizar el backup" msgstr "Error while doing the backup" #: ../../../../lib/SP/Services/Backup/FileBackupService.php:116 -#: ../../../../lib/SP/Services/Export/XmlExportService.php:163 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:167 #: ../../../modules/web/Controllers/ConfigImportController.php:80 -#: ../../../modules/web/Controllers/ConfigImportController.php:82 +#: ../../../modules/web/Controllers/ConfigImportController.php:83 msgid "Revise el registro de eventos para más detalles" msgstr "Please check out the event log for more details" @@ -1372,21 +1204,21 @@ msgid "Errores al actualizar datos de campos personalizados" msgstr "Error while updating the custom fields data" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:75 -#: ../../../modules/web/Controllers/ConfigBackupController.php:124 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:93 +#: ../../../modules/web/Controllers/ConfigBackupController.php:122 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:91 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:294 msgid "Categorías" msgstr "Categories" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:76 -#: ../../../modules/web/Controllers/ConfigBackupController.php:123 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:200 +#: ../../../modules/web/Controllers/ConfigBackupController.php:121 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:90 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:326 msgid "Clientes" msgstr "Clients" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:77 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:599 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:102 #: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:13 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:46 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:48 @@ -1396,7 +1228,7 @@ msgid "Usuarios" msgstr "Users" #: ../../../../lib/SP/Services/CustomField/CustomFieldDefService.php:78 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:718 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:93 #: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:51 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:262 msgid "Grupos" @@ -1414,34 +1246,34 @@ msgstr "Error while deleting the fields" msgid "Tipo de campo no encontrado" msgstr "Field type not found" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:112 -#: ../../../../lib/SP/Storage/File/FileCache.php:65 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:100 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:114 +#: ../../../../lib/SP/Storage/File/FileCache.php:74 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:116 #, php-format msgid "No es posible crear el directorio (%s)" msgstr "Unable to create the directory (%s)" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:161 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:165 msgid "Error al realizar la exportación" msgstr "Error while exporting" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:229 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:233 msgid "Exportando categorías" msgstr "Exporting categories" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:341 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:345 msgid "Exportando clientes" msgstr "Exporting clients" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:387 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:391 msgid "Exportando etiquetas" msgstr "Exporting tags" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:431 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:435 msgid "Exportando cuentas" msgstr "Exporting accounts" -#: ../../../../lib/SP/Services/Export/XmlExportService.php:538 +#: ../../../../lib/SP/Services/Export/XmlExportService.php:545 msgid "Error al crear el archivo XML" msgstr "Error while creating the XML file" @@ -1450,12 +1282,13 @@ msgstr "Error while creating the XML file" msgid "No es posible procesar el archivo XML" msgstr "Unable to process the XML file" -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:134 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:177 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:176 msgid "Fallo en la verificación del hash de integridad" msgstr "Error while checking integrity hash" -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:196 -#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:226 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:194 +#: ../../../../lib/SP/Services/Export/XmlVerifyService.php:224 #: ../../../../lib/SP/Services/Import/SyspassImport.php:124 #: ../../../../lib/SP/Services/Import/SyspassImport.php:148 msgid "Clave de encriptación incorrecta" @@ -1466,50 +1299,54 @@ msgstr "Wrong encryption password" msgid "Formato detectado: %s" msgstr "Detected format: %s" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:132 -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:178 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:130 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:176 #, php-format msgid "El número de campos es incorrecto (%d)" msgstr "Wrong number of fields (%d)" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:134 -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:180 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:132 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:178 #, php-format msgid "Compruebe el formato del archivo CSV en línea %s" msgstr "Please, check the CSV file format in line %s" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:160 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:158 #: ../../../../lib/SP/Services/Import/KeepassImport.php:103 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:371 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:387 msgid "Cuenta importada" msgstr "Account imported" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:161 -#: ../../../modules/api/Controllers/AccountController.php:65 -#: ../../../modules/api/Controllers/AccountController.php:96 -#: ../../../modules/api/Controllers/AccountController.php:143 -#: ../../../modules/api/Controllers/AccountController.php:195 -#: ../../../modules/api/Controllers/ClientController.php:86 -#: ../../../modules/api/Controllers/ClientController.php:116 -#: ../../../modules/api/Controllers/ClientController.php:144 -#: ../../../modules/web/Controllers/AccountController.php:223 -#: ../../../modules/web/Controllers/AccountController.php:690 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:159 +#: ../../../modules/api/Controllers/AccountController.php:67 +#: ../../../modules/api/Controllers/AccountController.php:99 +#: ../../../modules/api/Controllers/AccountController.php:133 +#: ../../../modules/api/Controllers/AccountController.php:180 +#: ../../../modules/api/Controllers/AccountController.php:229 +#: ../../../modules/api/Controllers/AccountController.php:302 +#: ../../../modules/api/Controllers/ClientController.php:64 +#: ../../../modules/api/Controllers/ClientController.php:94 +#: ../../../modules/api/Controllers/ClientController.php:125 +#: ../../../modules/api/Controllers/ClientController.php:154 +#: ../../../modules/web/Controllers/AccountController.php:222 +#: ../../../modules/web/Controllers/AccountController.php:691 #: ../../../modules/web/Controllers/AccountController.php:736 -#: ../../../modules/web/Controllers/AccountController.php:778 -#: ../../../modules/web/Controllers/AccountController.php:818 -#: ../../../modules/web/Controllers/AccountController.php:868 -#: ../../../modules/web/Controllers/AccountController.php:904 -#: ../../../modules/web/Controllers/AccountFileController.php:224 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:107 -#: ../../../modules/web/Controllers/AccountManagerController.php:111 -#: ../../../modules/web/Controllers/ClientController.php:214 -#: ../../../modules/web/Controllers/ClientController.php:247 +#: ../../../modules/web/Controllers/AccountController.php:777 +#: ../../../modules/web/Controllers/AccountController.php:816 +#: ../../../modules/web/Controllers/AccountController.php:866 +#: ../../../modules/web/Controllers/AccountController.php:900 +#: ../../../modules/web/Controllers/AccountFileController.php:232 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:112 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:147 +#: ../../../modules/web/Controllers/AccountManagerController.php:115 +#: ../../../modules/web/Controllers/ClientController.php:213 +#: ../../../modules/web/Controllers/ClientController.php:245 #: ../../../modules/web/Controllers/ClientController.php:281 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:214 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:350 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:438 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:497 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:975 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:106 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:33 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:39 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:47 @@ -1524,11 +1361,11 @@ msgstr "Account imported" msgid "Cliente" msgstr "Client" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:168 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:166 msgid "Error importando cuenta" msgstr "Error while importing the account" -#: ../../../../lib/SP/Services/Import/CsvImportBase.php:169 +#: ../../../../lib/SP/Services/Import/CsvImportBase.php:167 msgid "Error procesando línea" msgstr "Error while processing line" @@ -1543,7 +1380,7 @@ msgid "Verifique los permisos del usuario del servidor web" msgstr "Please check the web server user permissions" #: ../../../../lib/SP/Services/Import/FileImport.php:100 -#: ../../../modules/web/Controllers/AccountFileController.php:173 +#: ../../../modules/web/Controllers/AccountFileController.php:181 msgid "Tipo de archivo no soportado" msgstr "File type not allowed" @@ -1552,8 +1389,8 @@ msgid "Compruebe la extensión del archivo" msgstr "Please, check the file extension" #: ../../../../lib/SP/Services/Import/FileImport.php:116 -#: ../../../modules/web/Controllers/AccountFileController.php:188 -#: ../../../modules/web/Controllers/AccountFileController.php:209 +#: ../../../modules/web/Controllers/AccountFileController.php:196 +#: ../../../modules/web/Controllers/AccountFileController.php:217 msgid "Error interno al leer el archivo" msgstr "Internal error while reading the file" @@ -1561,12 +1398,12 @@ msgstr "Internal error while reading the file" msgid "Compruebe la configuración de PHP para subir archivos" msgstr "Please, check PHP configuration for upload files" -#: ../../../../lib/SP/Services/Import/ImportService.php:88 +#: ../../../../lib/SP/Services/Import/ImportService.php:89 #, php-format msgid "Tipo mime no soportado (\"%s\")" msgstr "Mime type not supported (\"%s\")" -#: ../../../../lib/SP/Services/Import/ImportService.php:90 +#: ../../../../lib/SP/Services/Import/ImportService.php:91 msgid "Compruebe el formato del archivo" msgstr "Please, check the file format" @@ -1583,28 +1420,29 @@ msgid "Importación XML KeePass" msgstr "KeePass XML Import" #: ../../../../lib/SP/Services/Import/KeepassImport.php:77 -#: ../../../modules/api/Controllers/ClientController.php:85 -#: ../../../modules/api/Controllers/ClientController.php:89 -#: ../../../modules/web/Controllers/ClientController.php:246 -#: ../../../modules/web/Controllers/ClientController.php:250 +#: ../../../modules/api/Controllers/ClientController.php:93 +#: ../../../modules/api/Controllers/ClientController.php:98 +#: ../../../modules/web/Controllers/ClientController.php:244 +#: ../../../modules/web/Controllers/ClientController.php:248 msgid "Cliente creado" msgstr "Client added" #: ../../../../lib/SP/Services/Import/KeepassImport.php:91 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:195 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:211 msgid "Categoría importada" msgstr "Category imported" #: ../../../../lib/SP/Services/Import/KeepassImport.php:104 -#: ../../../modules/api/Controllers/CategoryController.php:88 -#: ../../../modules/api/Controllers/CategoryController.php:117 -#: ../../../modules/api/Controllers/CategoryController.php:145 +#: ../../../modules/api/Controllers/CategoryController.php:63 +#: ../../../modules/api/Controllers/CategoryController.php:91 +#: ../../../modules/api/Controllers/CategoryController.php:121 +#: ../../../modules/api/Controllers/CategoryController.php:150 #: ../../../modules/web/Controllers/CategoryController.php:215 -#: ../../../modules/web/Controllers/CategoryController.php:253 -#: ../../../modules/web/Controllers/CategoryController.php:295 +#: ../../../modules/web/Controllers/CategoryController.php:249 +#: ../../../modules/web/Controllers/CategoryController.php:289 #: ../../../modules/web/Controllers/Helpers/Account/AccountSearchHelper.php:228 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:439 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:498 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:104 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:62 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:64 #: ../../../modules/web/themes/material-blue/views/account/account-link.inc:38 @@ -1627,12 +1465,20 @@ msgstr "Encryption password not set" msgid "Datos desencriptados" msgstr "Data unencrypted" -#: ../../../../lib/SP/Services/Import/SyspassImport.php:234 -#: ../../../../lib/SP/Services/Import/SyspassImport.php:274 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:177 +msgid "" +"Si está importando un archivo exportado desde el mismo origen, los datos " +"pueden estar comprometidos." +msgstr "" +"If you are importing an exported file from the same origin, the data could " +"be compromised." + +#: ../../../../lib/SP/Services/Import/SyspassImport.php:250 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:290 msgid "Cliente importado" msgstr "Client imported" -#: ../../../../lib/SP/Services/Import/SyspassImport.php:310 +#: ../../../../lib/SP/Services/Import/SyspassImport.php:326 msgid "Etiqueta importada" msgstr "Tag imported" @@ -1644,11 +1490,11 @@ msgstr "XML file not supported" msgid "No es posible detectar la aplicación que exportó los datos" msgstr "Unable to detect the application the data was exported from" -#: ../../../../lib/SP/Services/Import/XmlImport.php:98 +#: ../../../../lib/SP/Services/Import/XmlImport.php:99 msgid "Formato no detectado" msgstr "Format not detected" -#: ../../../../lib/SP/Services/Import/XmlImport.php:106 +#: ../../../../lib/SP/Services/Import/XmlImport.php:107 msgid "Not implemented" msgstr "Not implemented" @@ -1668,88 +1514,88 @@ msgstr "Invalid XML format" msgid "El nodo \"%s\" no existe" msgstr "The \"%s\" node doesn't exist" -#: ../../../../lib/SP/Services/Install/Installer.php:103 +#: ../../../../lib/SP/Services/Install/Installer.php:106 msgid "Indicar nombre de usuario admin" msgstr "Please, enter the admin username" -#: ../../../../lib/SP/Services/Install/Installer.php:105 +#: ../../../../lib/SP/Services/Install/Installer.php:108 msgid "Usuario admin para acceso a la aplicación" msgstr "Admin user to log into the application" -#: ../../../../lib/SP/Services/Install/Installer.php:110 +#: ../../../../lib/SP/Services/Install/Installer.php:113 msgid "Indicar la clave de admin" msgstr "Please, enter the admin's password" -#: ../../../../lib/SP/Services/Install/Installer.php:112 +#: ../../../../lib/SP/Services/Install/Installer.php:115 msgid "Clave del usuario admin de la aplicación" msgstr "Application administrator's password" -#: ../../../../lib/SP/Services/Install/Installer.php:117 +#: ../../../../lib/SP/Services/Install/Installer.php:120 msgid "Indicar la clave maestra" msgstr "Please, enter the Master Password" -#: ../../../../lib/SP/Services/Install/Installer.php:119 +#: ../../../../lib/SP/Services/Install/Installer.php:122 msgid "Clave maestra para encriptar las claves" msgstr "Master password to encrypt the passwords" -#: ../../../../lib/SP/Services/Install/Installer.php:124 +#: ../../../../lib/SP/Services/Install/Installer.php:127 msgid "Clave maestra muy corta" msgstr "Master password too short" -#: ../../../../lib/SP/Services/Install/Installer.php:126 +#: ../../../../lib/SP/Services/Install/Installer.php:129 msgid "La longitud de la clave maestra ha de ser mayor de 11 caracteres" msgstr "The Master Password length need to be at least 11 characters" -#: ../../../../lib/SP/Services/Install/Installer.php:131 +#: ../../../../lib/SP/Services/Install/Installer.php:134 msgid "Indicar el usuario de la BBDD" msgstr "Please, enter the database user" -#: ../../../../lib/SP/Services/Install/Installer.php:133 +#: ../../../../lib/SP/Services/Install/Installer.php:136 msgid "Usuario con permisos de administrador de la Base de Datos" msgstr "An user with database administrative rights" -#: ../../../../lib/SP/Services/Install/Installer.php:138 +#: ../../../../lib/SP/Services/Install/Installer.php:141 msgid "Indicar la clave de la BBDD" msgstr "Please, enter the database password" -#: ../../../../lib/SP/Services/Install/Installer.php:140 +#: ../../../../lib/SP/Services/Install/Installer.php:143 msgid "Clave del usuario administrador de la Base de Datos" msgstr "Database administrator's password" -#: ../../../../lib/SP/Services/Install/Installer.php:145 +#: ../../../../lib/SP/Services/Install/Installer.php:148 msgid "Indicar el nombre de la BBDD" msgstr "Please, enter the database name" -#: ../../../../lib/SP/Services/Install/Installer.php:147 +#: ../../../../lib/SP/Services/Install/Installer.php:150 msgid "Nombre para la BBDD de la aplicación pej. syspass" msgstr "Application database name. eg. syspass" -#: ../../../../lib/SP/Services/Install/Installer.php:152 +#: ../../../../lib/SP/Services/Install/Installer.php:155 msgid "El nombre de la BBDD no puede contener \".\"" msgstr "Database name cannot contain \".\"" -#: ../../../../lib/SP/Services/Install/Installer.php:154 +#: ../../../../lib/SP/Services/Install/Installer.php:157 msgid "Elimine los puntos del nombre de la Base de Datos" msgstr "Please, remove dots in database name" -#: ../../../../lib/SP/Services/Install/Installer.php:159 +#: ../../../../lib/SP/Services/Install/Installer.php:162 msgid "Indicar el servidor de la BBDD" msgstr "Please, enter the database server" -#: ../../../../lib/SP/Services/Install/Installer.php:161 +#: ../../../../lib/SP/Services/Install/Installer.php:164 msgid "Servidor donde se instalará la Base de Datos" msgstr "Server where the database will be installed" -#: ../../../../lib/SP/Services/Install/Installer.php:314 -#: ../../../../lib/SP/Services/Install/Installer.php:365 +#: ../../../../lib/SP/Services/Install/Installer.php:318 +#: ../../../../lib/SP/Services/Install/Installer.php:369 msgid "Informe al desarrollador" msgstr "Warn to developer" -#: ../../../../lib/SP/Services/Install/Installer.php:355 +#: ../../../../lib/SP/Services/Install/Installer.php:359 msgid "Error al crear el usuario 'admin'" msgstr "Error while creating 'admin' user" -#: ../../../../lib/SP/Services/Install/MySQL.php:98 +#: ../../../../lib/SP/Services/Install/MySQL.php:99 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:97 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:117 #: ../../../../lib/SP/Storage/Database/MySQLHandler.php:164 @@ -1757,66 +1603,59 @@ msgstr "Error while creating 'admin' user" msgid "No es posible conectar con la BD" msgstr "Unable to connect to the DB" -#: ../../../../lib/SP/Services/Install/MySQL.php:134 +#: ../../../../lib/SP/Services/Install/MySQL.php:135 #, php-format msgid "No es posible comprobar el usuario de sysPass (%s)" msgstr "Unable to check the sysPass user (%s)" -#: ../../../../lib/SP/Services/Install/MySQL.php:136 +#: ../../../../lib/SP/Services/Install/MySQL.php:137 msgid "Compruebe los permisos del usuario de conexión a la BD" msgstr "Please, check the DB connection user rights" -#: ../../../../lib/SP/Services/Install/MySQL.php:180 +#: ../../../../lib/SP/Services/Install/MySQL.php:181 #, php-format msgid "Error al crear el usuario de conexión a MySQL '%s'" msgstr "Error while creating the MySQL connection user '%s'" -#: ../../../../lib/SP/Services/Install/MySQL.php:200 +#: ../../../../lib/SP/Services/Install/MySQL.php:201 msgid "La BBDD ya existe" msgstr "The database already exists" -#: ../../../../lib/SP/Services/Install/MySQL.php:202 +#: ../../../../lib/SP/Services/Install/MySQL.php:203 msgid "Indique una nueva Base de Datos o elimine la existente" msgstr "Please, enter a new database or delete the existing one" -#: ../../../../lib/SP/Services/Install/MySQL.php:212 -#: ../../../../lib/SP/Services/Install/MySQL.php:339 +#: ../../../../lib/SP/Services/Install/MySQL.php:213 +#: ../../../../lib/SP/Services/Install/MySQL.php:329 +#: ../../../../lib/SP/Services/Install/MySQL.php:341 #, php-format msgid "Error al crear la BBDD ('%s')" msgstr "Error while creating the DB ('%s')" -#: ../../../../lib/SP/Services/Install/MySQL.php:214 -#: ../../../../lib/SP/Services/Install/MySQL.php:238 +#: ../../../../lib/SP/Services/Install/MySQL.php:215 +#: ../../../../lib/SP/Services/Install/MySQL.php:239 msgid "Verifique los permisos del usuario de la Base de Datos" msgstr "Please check the database user permissions" -#: ../../../../lib/SP/Services/Install/MySQL.php:236 +#: ../../../../lib/SP/Services/Install/MySQL.php:237 #, php-format msgid "Error al establecer permisos de la BBDD ('%s')" msgstr "Error while setting the database permissions ('%s')" -#: ../../../../lib/SP/Services/Install/MySQL.php:250 +#: ../../../../lib/SP/Services/Install/MySQL.php:251 msgid "La BBDD no existe" msgstr "The database does not exist" -#: ../../../../lib/SP/Services/Install/MySQL.php:252 +#: ../../../../lib/SP/Services/Install/MySQL.php:253 msgid "Es necesario crearla y asignar los permisos necesarios" msgstr "You need to create it and assign the needed permissions" -#: ../../../../lib/SP/Services/Install/MySQL.php:305 -msgid "El archivo de estructura de la BBDD no existe" -msgstr "The database structure file does not exist" - -#: ../../../../lib/SP/Services/Install/MySQL.php:307 -msgid "No es posible crear la BBDD de la aplicación. Descárguela de nuevo." -msgstr "Unable to create the application database. Please download it again." - -#: ../../../../lib/SP/Services/Install/MySQL.php:318 +#: ../../../../lib/SP/Services/Install/MySQL.php:309 #, php-format msgid "Error al seleccionar la BBDD '%s' (%s)" msgstr "Error while selecting '%s' database (%s)" -#: ../../../../lib/SP/Services/Install/MySQL.php:320 +#: ../../../../lib/SP/Services/Install/MySQL.php:311 msgid "" "No es posible usar la Base de Datos para crear la estructura. Compruebe los " "permisos y que no exista." @@ -1824,15 +1663,15 @@ msgstr "" "Unable to use the database to create the structure. Check permissions and it " "does not exist." -#: ../../../../lib/SP/Services/Install/MySQL.php:341 +#: ../../../../lib/SP/Services/Install/MySQL.php:331 msgid "Error al crear la estructura de la Base de Datos." msgstr "Error while creating database structure." -#: ../../../../lib/SP/Services/Install/MySQL.php:360 +#: ../../../../lib/SP/Services/Install/MySQL.php:361 msgid "Error al comprobar la base de datos" msgstr "Error while checking the database" -#: ../../../../lib/SP/Services/Install/MySQL.php:362 +#: ../../../../lib/SP/Services/Install/MySQL.php:363 msgid "Intente de nuevo la instalación" msgstr "Please, try the installation again" @@ -1909,21 +1748,21 @@ msgstr "Link not found" msgid "Error al eliminar los enlaces" msgstr "Error while removing the links" -#: ../../../../lib/SP/Services/Service.php:113 +#: ../../../../lib/SP/Services/Service.php:109 msgid "Rollback" msgstr "Rollback" -#: ../../../../lib/SP/Services/Service.php:119 +#: ../../../../lib/SP/Services/Service.php:115 msgid "No es posible iniciar una transacción" msgstr "Unable to start a transaction" -#: ../../../../lib/SP/Services/Service.php:137 -#: ../../../../lib/SP/Services/Service.php:144 +#: ../../../../lib/SP/Services/Service.php:133 +#: ../../../../lib/SP/Services/Service.php:140 msgid "Error al obtener la clave maestra del contexto" msgstr "Error while retrieving master password from context" +#: ../../../../lib/SP/Services/Service.php:160 #: ../../../../lib/SP/Services/Service.php:164 -#: ../../../../lib/SP/Services/Service.php:168 msgid "Error ol establecer la clave maestra en el contexto" msgstr "Error while setting master password in context" @@ -1976,17 +1815,17 @@ msgid "Actualización de autorizaciones API" msgstr "API authorizations update" #: ../../../../lib/SP/Services/Upgrade/UpgradeAuthToken.php:70 -#: ../../../modules/web/Controllers/AuthTokenController.php:286 -#: ../../../modules/web/Controllers/AuthTokenController.php:295 -#: ../../../modules/web/Controllers/AuthTokenController.php:302 +#: ../../../modules/web/Controllers/AuthTokenController.php:283 +#: ../../../modules/web/Controllers/AuthTokenController.php:292 +#: ../../../modules/web/Controllers/AuthTokenController.php:299 msgid "Autorización actualizada" msgstr "Authorization updated" #: ../../../../lib/SP/Services/Upgrade/UpgradeAuthToken.php:71 -#: ../../../modules/web/Controllers/AuthTokenController.php:219 -#: ../../../modules/web/Controllers/AuthTokenController.php:287 -#: ../../../modules/web/Controllers/AuthTokenController.php:296 -#: ../../../modules/web/Controllers/AuthTokenController.php:334 +#: ../../../modules/web/Controllers/AuthTokenController.php:218 +#: ../../../modules/web/Controllers/AuthTokenController.php:284 +#: ../../../modules/web/Controllers/AuthTokenController.php:293 +#: ../../../modules/web/Controllers/AuthTokenController.php:331 msgid "Autorización" msgstr "Authorization" @@ -2002,9 +1841,9 @@ msgstr "Parameter" #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:113 #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:229 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:169 -#: ../../../modules/web/Controllers/ConfigBackupController.php:120 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:38 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:164 +#: ../../../modules/web/Controllers/ConfigBackupController.php:118 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:40 #: ../../../modules/web/themes/material-blue/views/itemshow/plugin.inc:25 msgid "Versión" msgstr "Version" @@ -2015,11 +1854,11 @@ msgid "Error al actualizar la configuración" msgstr "Error while updating the configuration" #: ../../../../lib/SP/Services/Upgrade/UpgradeConfigService.php:122 -#: ../../../modules/web/Controllers/AccountFileController.php:81 -#: ../../../modules/web/Controllers/AccountFileController.php:94 -#: ../../../modules/web/Controllers/AccountFileController.php:132 -#: ../../../modules/web/Controllers/AccountFileController.php:222 -#: ../../../modules/web/Controllers/AccountFileController.php:315 +#: ../../../modules/web/Controllers/AccountFileController.php:83 +#: ../../../modules/web/Controllers/AccountFileController.php:96 +#: ../../../modules/web/Controllers/AccountFileController.php:136 +#: ../../../modules/web/Controllers/AccountFileController.php:230 +#: ../../../modules/web/Controllers/AccountFileController.php:327 #: ../../../modules/web/themes/material-blue/views/config/import.inc:70 msgid "Archivo" msgstr "File" @@ -2036,15 +1875,15 @@ msgstr "Custom fields update" #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldData.php:74 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:87 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:156 -#: ../../../modules/web/Controllers/CustomFieldController.php:270 -#: ../../../modules/web/Controllers/CustomFieldController.php:274 +#: ../../../modules/web/Controllers/CustomFieldController.php:271 +#: ../../../modules/web/Controllers/CustomFieldController.php:275 msgid "Campo actualizado" msgstr "Field updated" #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:88 #: ../../../../lib/SP/Services/Upgrade/UpgradeCustomFieldDefinition.php:157 -#: ../../../modules/web/Controllers/CustomFieldController.php:236 -#: ../../../modules/web/Controllers/CustomFieldController.php:271 +#: ../../../modules/web/Controllers/CustomFieldController.php:235 +#: ../../../modules/web/Controllers/CustomFieldController.php:272 msgid "Campo" msgstr "Field" @@ -2058,17 +1897,17 @@ msgid "Error al aplicar la actualización auxiliar" msgstr "Error while applying an auxiliary update" #: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:95 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:182 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:186 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:177 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:181 msgid "Error al aplicar la actualización de la Base de Datos" msgstr "Error while updating the database" #: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:155 -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:159 -msgid "No es necesario actualizar la Base de Datos." -msgstr "Database update not needed." +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:157 +msgid "El archivo de actualización no contiene datos" +msgstr "The updating file does not contain data" -#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:192 +#: ../../../../lib/SP/Services/Upgrade/UpgradeDatabaseService.php:187 msgid "Actualización de la Base de Datos realizada correctamente." msgstr "Database updating was completed successfully." @@ -2078,19 +1917,19 @@ msgid "Actualización de enlaces públicos" msgstr "Public links update" #: ../../../../lib/SP/Services/Upgrade/UpgradePublicLink.php:89 -#: ../../../modules/web/Controllers/PublicLinkController.php:172 +#: ../../../modules/web/Controllers/PublicLinkController.php:170 msgid "Enlace actualizado" msgstr "Link updated" #: ../../../../lib/SP/Services/Upgrade/UpgradePublicLink.php:90 -#: ../../../modules/web/Controllers/PublicLinkController.php:244 +#: ../../../modules/web/Controllers/PublicLinkController.php:241 msgid "Enlace" msgstr "Link" #: ../../../../lib/SP/Services/User/UpdatedMasterPassException.php:45 #: ../../../../lib/SP/Util/ErrorUtil.php:145 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:67 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:141 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:68 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:142 #: ../../../modules/web/Controllers/Helpers/Account/AccountPasswordHelper.php:96 msgid "Reinicie la sesión para cambiarla" msgstr "Please, restart the session for update it" @@ -2118,8 +1957,8 @@ msgid "Error al eliminar los grupos" msgstr "Error while deleting the groups" #: ../../../../lib/SP/Services/UserPassRecover/UserPassRecoverService.php:65 -#: ../../../modules/web/Controllers/UserController.php:225 -#: ../../../modules/web/Controllers/UserController.php:344 +#: ../../../modules/web/Controllers/UserController.php:224 +#: ../../../modules/web/Controllers/UserController.php:342 #: ../../../modules/web/Controllers/UserPassResetController.php:105 #: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:232 msgid "Cambio de Clave" @@ -2165,96 +2004,69 @@ msgstr "Please, check the connection parameters" msgid "Error en la consulta" msgstr "Error while querying" -#: ../../../../lib/SP/Storage/File/FileCache.php:43 -#: ../../../../lib/SP/Storage/File/FileHandler.php:208 -#: ../../../../lib/SP/Storage/File/FileHandler.php:263 -#, php-format -msgid "No es posible leer el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:47 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:58 -#, php-format -msgid "Error al leer datos del archivo (%s)" -msgstr "Error while reading file data (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:69 -#: ../../../../lib/SP/Storage/File/FileCache.php:73 -#: ../../../../lib/SP/Storage/File/FileHandler.php:69 -#, php-format -msgid "No es posible escribir en el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:88 -#: ../../../../lib/SP/Storage/File/FileHandler.php:86 -#, php-format -msgid "No es posible abrir el archivo (%s)" -msgstr "Unable to open the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCache.php:92 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:128 -#, php-format -msgid "Error al eliminar el archivo (%s)" -msgstr "Error while deleting the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:54 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:104 -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:124 -#, php-format -msgid "No es posible leer/escribir el archivo (%s)" -msgstr "Unable to read/write the file (%s)" - -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:62 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:57 #, php-format msgid "Error al descomprimir datos del archivo (%s)" msgstr "Error while decompressing the file data (%s)" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:66 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:61 msgid "Error al obtener los datos" msgstr "Error while retrieving the data" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:108 +#: ../../../../lib/SP/Storage/File/FileCachePacked.php:99 #, php-format msgid "Error al comprimir datos del archivo (%s)" msgstr "Error while compressing the file data (%s)" -#: ../../../../lib/SP/Storage/File/FileCachePacked.php:112 -#, php-format -msgid "Error al escribir datos en el archivo (%s)" -msgstr "Error while writing data to file (%s)" - #: ../../../../lib/SP/Storage/File/FileCachePacked.php:144 msgid "Datos no cargados" msgstr "Data not loaded" +#: ../../../../lib/SP/Storage/File/FileHandler.php:69 +#: ../../../../lib/SP/Storage/File/FileHandler.php:132 +#, php-format +msgid "No es posible escribir en el archivo (%s)" +msgstr "Unable to read/write the file (%s)" + +#: ../../../../lib/SP/Storage/File/FileHandler.php:86 +#, php-format +msgid "No es posible abrir el archivo (%s)" +msgstr "Unable to open the file (%s)" + #: ../../../../lib/SP/Storage/File/FileHandler.php:101 #: ../../../../lib/SP/Storage/File/FileHandler.php:115 #, php-format msgid "No es posible leer desde el archivo (%s)" msgstr "Unable to read from file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:153 +#: ../../../../lib/SP/Storage/File/FileHandler.php:170 #, php-format msgid "No es posible cerrar el archivo (%s)" msgstr "Unable to close the file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:168 +#: ../../../../lib/SP/Storage/File/FileHandler.php:185 #, php-format msgid "No es posible escribir el archivo (%s)" msgstr "Unable to write in file (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:183 +#: ../../../../lib/SP/Storage/File/FileHandler.php:200 #, php-format msgid "Archivo no encontrado (%s)" msgstr "File not found (%s)" -#: ../../../../lib/SP/Storage/File/FileHandler.php:235 +#: ../../../../lib/SP/Storage/File/FileHandler.php:225 +#: ../../../../lib/SP/Storage/File/FileHandler.php:280 +#, php-format +msgid "No es posible leer el archivo (%s)" +msgstr "Unable to read/write the file (%s)" + +#: ../../../../lib/SP/Storage/File/FileHandler.php:252 #, php-format msgid "No es posible eliminar el archivo (%s)" msgstr "Unable to delete file (%s)" #: ../../../../lib/SP/Storage/File/XmlHandler.php:89 -#: ../../../../lib/SP/Storage/File/XmlHandler.php:310 +#: ../../../../lib/SP/Storage/File/XmlHandler.php:309 msgid "El nodo XML no existe" msgstr "The XML node does not exist" @@ -2262,11 +2074,11 @@ msgstr "The XML node does not exist" msgid "No hay elementos para guardar" msgstr "There aren't any items to save" -#: ../../../../lib/SP/Util/Connection.php:124 +#: ../../../../lib/SP/Util/Connection.php:157 msgid "Socket no inicializado" msgstr "Socket not initialized" -#: ../../../../lib/SP/Util/Connection.php:131 +#: ../../../../lib/SP/Util/Connection.php:164 msgid "Error al enviar datos" msgstr "Error while sending the data" @@ -2275,6 +2087,86 @@ msgid "Opción no disponible" msgstr "Option unavailable" #: ../../../../lib/SP/Util/ErrorUtil.php:140 +#: ../../../modules/web/Controllers/AccountFileController.php:259 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:59 +#: ../../../modules/web/Controllers/AccountManagerController.php:57 +#: ../../../modules/web/Controllers/AuthTokenController.php:65 +#: ../../../modules/web/Controllers/AuthTokenController.php:97 +#: ../../../modules/web/Controllers/AuthTokenController.php:162 +#: ../../../modules/web/Controllers/AuthTokenController.php:192 +#: ../../../modules/web/Controllers/AuthTokenController.php:235 +#: ../../../modules/web/Controllers/AuthTokenController.php:270 +#: ../../../modules/web/Controllers/AuthTokenController.php:319 +#: ../../../modules/web/Controllers/CategoryController.php:63 +#: ../../../modules/web/Controllers/CategoryController.php:95 +#: ../../../modules/web/Controllers/CategoryController.php:159 +#: ../../../modules/web/Controllers/CategoryController.php:189 +#: ../../../modules/web/Controllers/CategoryController.php:232 +#: ../../../modules/web/Controllers/CategoryController.php:272 +#: ../../../modules/web/Controllers/CategoryController.php:312 +#: ../../../modules/web/Controllers/ClientController.php:64 +#: ../../../modules/web/Controllers/ClientController.php:96 +#: ../../../modules/web/Controllers/ClientController.php:160 +#: ../../../modules/web/Controllers/ClientController.php:190 +#: ../../../modules/web/Controllers/ClientController.php:230 +#: ../../../modules/web/Controllers/ClientController.php:268 +#: ../../../modules/web/Controllers/ClientController.php:304 +#: ../../../modules/web/Controllers/CustomFieldController.php:65 +#: ../../../modules/web/Controllers/CustomFieldController.php:97 +#: ../../../modules/web/Controllers/CustomFieldController.php:159 +#: ../../../modules/web/Controllers/CustomFieldController.php:189 +#: ../../../modules/web/Controllers/CustomFieldController.php:221 +#: ../../../modules/web/Controllers/CustomFieldController.php:258 +#: ../../../modules/web/Controllers/CustomFieldController.php:295 +#: ../../../modules/web/Controllers/EventlogController.php:94 +#: ../../../modules/web/Controllers/NotificationController.php:100 +#: ../../../modules/web/Controllers/NotificationController.php:160 +#: ../../../modules/web/Controllers/NotificationController.php:175 +#: ../../../modules/web/Controllers/NotificationController.php:206 +#: ../../../modules/web/Controllers/NotificationController.php:237 +#: ../../../modules/web/Controllers/NotificationController.php:288 +#: ../../../modules/web/Controllers/NotificationController.php:315 +#: ../../../modules/web/Controllers/NotificationController.php:348 +#: ../../../modules/web/Controllers/PluginController.php:97 +#: ../../../modules/web/Controllers/PluginController.php:117 +#: ../../../modules/web/Controllers/PublicLinkController.php:68 +#: ../../../modules/web/Controllers/PublicLinkController.php:100 +#: ../../../modules/web/Controllers/PublicLinkController.php:162 +#: ../../../modules/web/Controllers/PublicLinkController.php:188 +#: ../../../modules/web/Controllers/PublicLinkController.php:218 +#: ../../../modules/web/Controllers/PublicLinkController.php:259 +#: ../../../modules/web/Controllers/PublicLinkController.php:291 +#: ../../../modules/web/Controllers/PublicLinkController.php:333 +#: ../../../modules/web/Controllers/TagController.php:62 +#: ../../../modules/web/Controllers/TagController.php:94 +#: ../../../modules/web/Controllers/TagController.php:154 +#: ../../../modules/web/Controllers/TagController.php:184 +#: ../../../modules/web/Controllers/TagController.php:218 +#: ../../../modules/web/Controllers/TagController.php:249 +#: ../../../modules/web/Controllers/TagController.php:280 +#: ../../../modules/web/Controllers/UserController.php:69 +#: ../../../modules/web/Controllers/UserController.php:101 +#: ../../../modules/web/Controllers/UserController.php:186 +#: ../../../modules/web/Controllers/UserController.php:218 +#: ../../../modules/web/Controllers/UserController.php:254 +#: ../../../modules/web/Controllers/UserController.php:296 +#: ../../../modules/web/Controllers/UserController.php:356 +#: ../../../modules/web/Controllers/UserController.php:397 +#: ../../../modules/web/Controllers/UserController.php:434 +#: ../../../modules/web/Controllers/UserGroupController.php:70 +#: ../../../modules/web/Controllers/UserGroupController.php:102 +#: ../../../modules/web/Controllers/UserGroupController.php:168 +#: ../../../modules/web/Controllers/UserGroupController.php:198 +#: ../../../modules/web/Controllers/UserGroupController.php:238 +#: ../../../modules/web/Controllers/UserGroupController.php:277 +#: ../../../modules/web/Controllers/UserGroupController.php:316 +#: ../../../modules/web/Controllers/UserProfileController.php:64 +#: ../../../modules/web/Controllers/UserProfileController.php:96 +#: ../../../modules/web/Controllers/UserProfileController.php:163 +#: ../../../modules/web/Controllers/UserProfileController.php:193 +#: ../../../modules/web/Controllers/UserProfileController.php:233 +#: ../../../modules/web/Controllers/UserProfileController.php:268 +#: ../../../modules/web/Controllers/UserProfileController.php:304 msgid "No tiene permisos para realizar esta operación" msgstr "You don't have permission to do this operation" @@ -2283,25 +2175,10 @@ msgstr "You don't have permission to do this operation" msgid "Se ha producido una excepción" msgstr "An exception occured" -#: ../../../../lib/SP/Util/ImageUtil.php:48 -#: ../../../../lib/SP/Util/ImageUtil.php:99 -#: ../../../../lib/SP/Util/Util.php:180 ../../../../lib/SP/Util/Util.php:182 -#, php-format -msgid "Extensión '%s' no cargada" -msgstr "Extension '%s' not loaded" - -#: ../../../../lib/SP/Util/ImageUtil.php:105 +#: ../../../../lib/SP/Util/ImageUtil.php:65 msgid "Imagen no válida" msgstr "Invalid image" -#: ../../../../lib/SP/Util/Json.php:73 -msgid "Error de codificación" -msgstr "Encoding error" - -#: ../../../../lib/SP/Util/Util.php:243 -msgid "Respuesta" -msgstr "Response" - #: ../../../../lib/SP/Util/Wiki/DokuWikiApi.php:70 msgid "Fallo de autentificación" msgstr "Authentication error" @@ -2314,30 +2191,33 @@ msgstr "Error while doing the query" msgid "URL de conexión no establecida" msgstr "Connection URL not set" -#: ../../../modules/api/Controllers/AccountController.php:63 +#: ../../../modules/api/Controllers/AccountController.php:65 msgid "Cuenta visualizada" msgstr "Account displayed" -#: ../../../modules/api/Controllers/AccountController.php:64 -#: ../../../modules/api/Controllers/AccountController.php:95 -#: ../../../modules/api/Controllers/AccountController.php:142 -#: ../../../modules/api/Controllers/AccountController.php:194 -#: ../../../modules/web/Controllers/AccountController.php:222 -#: ../../../modules/web/Controllers/AccountController.php:554 -#: ../../../modules/web/Controllers/AccountController.php:589 -#: ../../../modules/web/Controllers/AccountController.php:624 -#: ../../../modules/web/Controllers/AccountController.php:654 -#: ../../../modules/web/Controllers/AccountController.php:689 +#: ../../../modules/api/Controllers/AccountController.php:66 +#: ../../../modules/api/Controllers/AccountController.php:98 +#: ../../../modules/api/Controllers/AccountController.php:132 +#: ../../../modules/api/Controllers/AccountController.php:179 +#: ../../../modules/api/Controllers/AccountController.php:228 +#: ../../../modules/api/Controllers/AccountController.php:301 +#: ../../../modules/web/Controllers/AccountController.php:221 +#: ../../../modules/web/Controllers/AccountController.php:555 +#: ../../../modules/web/Controllers/AccountController.php:592 +#: ../../../modules/web/Controllers/AccountController.php:626 +#: ../../../modules/web/Controllers/AccountController.php:655 +#: ../../../modules/web/Controllers/AccountController.php:690 #: ../../../modules/web/Controllers/AccountController.php:735 -#: ../../../modules/web/Controllers/AccountController.php:777 -#: ../../../modules/web/Controllers/AccountController.php:817 -#: ../../../modules/web/Controllers/AccountController.php:867 -#: ../../../modules/web/Controllers/AccountController.php:903 -#: ../../../modules/web/Controllers/AccountFileController.php:223 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:106 -#: ../../../modules/web/Controllers/AccountManagerController.php:110 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:349 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:974 +#: ../../../modules/web/Controllers/AccountController.php:776 +#: ../../../modules/web/Controllers/AccountController.php:815 +#: ../../../modules/web/Controllers/AccountController.php:865 +#: ../../../modules/web/Controllers/AccountController.php:899 +#: ../../../modules/web/Controllers/AccountFileController.php:231 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:111 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:146 +#: ../../../modules/web/Controllers/AccountManagerController.php:114 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:102 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:105 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:15 #: ../../../modules/web/themes/material-blue/views/account/account.inc:24 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:17 @@ -2345,108 +2225,368 @@ msgstr "Account displayed" msgid "Cuenta" msgstr "Account" -#: ../../../modules/api/Controllers/AccountController.php:94 -#: ../../../modules/web/Controllers/AccountController.php:553 -#: ../../../modules/web/Controllers/AccountController.php:588 +#: ../../../modules/api/Controllers/AccountController.php:68 +#: ../../../modules/api/Controllers/AccountController.php:100 +#: ../../../modules/api/Controllers/AccountController.php:134 +#: ../../../modules/api/Controllers/AccountController.php:181 +#: ../../../modules/api/Controllers/AccountController.php:230 +#: ../../../modules/api/Controllers/AccountController.php:303 +#: ../../../modules/api/Controllers/CategoryController.php:92 +#: ../../../modules/api/Controllers/CategoryController.php:122 +#: ../../../modules/api/Controllers/CategoryController.php:151 +#: ../../../modules/api/Controllers/ClientController.php:65 +#: ../../../modules/api/Controllers/ClientController.php:95 +#: ../../../modules/api/Controllers/ClientController.php:126 +#: ../../../modules/api/Controllers/ClientController.php:155 +#: ../../../modules/api/Controllers/TagController.php:118 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:100 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:138 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:140 +msgid "ID" +msgstr "ID" + +#: ../../../modules/api/Controllers/AccountController.php:97 +#: ../../../modules/web/Controllers/AccountController.php:554 +#: ../../../modules/web/Controllers/AccountController.php:591 msgid "Clave visualizada" msgstr "Password viewed" -#: ../../../modules/api/Controllers/AccountController.php:141 -#: ../../../modules/api/Controllers/AccountController.php:146 -#: ../../../modules/web/Controllers/AccountController.php:688 -#: ../../../modules/web/Controllers/AccountController.php:699 +#: ../../../modules/api/Controllers/AccountController.php:131 +#: ../../../modules/api/Controllers/AccountController.php:137 +#: ../../../modules/web/Controllers/AccountController.php:775 +#: ../../../modules/web/Controllers/AccountController.php:786 +#: ../../../modules/web/Controllers/UserController.php:410 +#: ../../../modules/web/Controllers/UserController.php:414 +#: ../../../modules/web/Controllers/UserPassResetController.php:186 +#: ../../../modules/web/Controllers/UserPassResetController.php:190 +msgid "Clave actualizada" +msgstr "Password updated" + +#: ../../../modules/api/Controllers/AccountController.php:178 +#: ../../../modules/api/Controllers/AccountController.php:184 +#: ../../../modules/web/Controllers/AccountController.php:689 +#: ../../../modules/web/Controllers/AccountController.php:700 msgid "Cuenta creada" msgstr "Account added" -#: ../../../modules/api/Controllers/AccountController.php:193 -#: ../../../modules/api/Controllers/AccountController.php:198 -#: ../../../modules/web/Controllers/AccountController.php:866 -#: ../../../modules/web/Controllers/AccountController.php:871 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:105 +#: ../../../modules/api/Controllers/AccountController.php:227 +#: ../../../modules/api/Controllers/AccountController.php:233 +#: ../../../modules/web/Controllers/AccountController.php:734 +#: ../../../modules/web/Controllers/AccountController.php:745 +msgid "Cuenta actualizada" +msgstr "Account updated" + +#: ../../../modules/api/Controllers/AccountController.php:300 +#: ../../../modules/api/Controllers/AccountController.php:306 +#: ../../../modules/web/Controllers/AccountController.php:864 +#: ../../../modules/web/Controllers/AccountController.php:869 #: ../../../modules/web/Controllers/AccountHistoryManagerController.php:110 -#: ../../../modules/web/Controllers/AccountManagerController.php:109 -#: ../../../modules/web/Controllers/AccountManagerController.php:114 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:115 +#: ../../../modules/web/Controllers/AccountManagerController.php:113 +#: ../../../modules/web/Controllers/AccountManagerController.php:118 msgid "Cuenta eliminada" msgstr "Account removed" -#: ../../../modules/api/Controllers/CategoryController.php:87 -#: ../../../modules/api/Controllers/CategoryController.php:91 +#: ../../../modules/api/Controllers/CategoryController.php:62 +msgid "Categoría visualizada" +msgstr "Category displayed" + +#: ../../../modules/api/Controllers/CategoryController.php:90 +#: ../../../modules/api/Controllers/CategoryController.php:95 +#: ../../../modules/web/Controllers/CategoryController.php:248 #: ../../../modules/web/Controllers/CategoryController.php:252 -#: ../../../modules/web/Controllers/CategoryController.php:256 msgid "Categoría creada" msgstr "Category added" -#: ../../../modules/api/Controllers/CategoryController.php:116 #: ../../../modules/api/Controllers/CategoryController.php:120 -#: ../../../modules/web/Controllers/CategoryController.php:294 -#: ../../../modules/web/Controllers/CategoryController.php:298 +#: ../../../modules/api/Controllers/CategoryController.php:125 +#: ../../../modules/web/Controllers/CategoryController.php:288 +#: ../../../modules/web/Controllers/CategoryController.php:292 msgid "Categoría actualizada" msgstr "Category updated" -#: ../../../modules/api/Controllers/CategoryController.php:144 -#: ../../../modules/api/Controllers/CategoryController.php:148 +#: ../../../modules/api/Controllers/CategoryController.php:149 +#: ../../../modules/api/Controllers/CategoryController.php:154 #: ../../../modules/web/Controllers/CategoryController.php:214 #: ../../../modules/web/Controllers/CategoryController.php:218 msgid "Categoría eliminada" msgstr "Category deleted" -#: ../../../modules/api/Controllers/ClientController.php:115 -#: ../../../modules/api/Controllers/ClientController.php:119 +#: ../../../modules/api/Controllers/ClientController.php:63 +msgid "Cliente visualizado" +msgstr "Client displayed" + +#: ../../../modules/api/Controllers/ClientController.php:124 +#: ../../../modules/api/Controllers/ClientController.php:129 #: ../../../modules/web/Controllers/ClientController.php:280 #: ../../../modules/web/Controllers/ClientController.php:284 msgid "Cliente actualizado" msgstr "Client updated" -#: ../../../modules/api/Controllers/ClientController.php:143 -#: ../../../modules/api/Controllers/ClientController.php:147 -#: ../../../modules/web/Controllers/ClientController.php:213 -#: ../../../modules/web/Controllers/ClientController.php:217 +#: ../../../modules/api/Controllers/ClientController.php:153 +#: ../../../modules/api/Controllers/ClientController.php:158 +#: ../../../modules/web/Controllers/ClientController.php:212 +#: ../../../modules/web/Controllers/ClientController.php:216 msgid "Cliente eliminado" msgstr "Client deleted" #: ../../../modules/api/Controllers/ConfigController.php:57 -#: ../../../modules/web/Controllers/ConfigBackupController.php:65 +#: ../../../modules/web/Controllers/ConfigBackupController.php:64 msgid "Copia de la aplicación y base de datos realizada correctamente" msgstr "Application and database backup completed successfully" -#: ../../../modules/api/Controllers/ConfigController.php:60 -#: ../../../modules/web/Controllers/ConfigBackupController.php:68 +#: ../../../modules/api/Controllers/ConfigController.php:58 +#: ../../../modules/api/Controllers/ConfigController.php:83 +#: ../../../modules/api/Controllers/Help/ConfigHelp.php:43 +#: ../../../modules/api/Controllers/Help/ConfigHelp.php:54 +msgid "Ruta" +msgstr "Path" + +#: ../../../modules/api/Controllers/ConfigController.php:61 +#: ../../../modules/web/Controllers/ConfigBackupController.php:67 msgid "Proceso de backup finalizado" msgstr "Backup process finished" -#: ../../../modules/api/Controllers/ConfigController.php:83 -#: ../../../modules/web/Controllers/ConfigBackupController.php:94 +#: ../../../modules/api/Controllers/ConfigController.php:82 +#: ../../../modules/web/Controllers/ConfigBackupController.php:92 msgid "Exportación de sysPass en XML" msgstr "sysPass XML export" #: ../../../modules/api/Controllers/ConfigController.php:91 #: ../../../modules/api/Controllers/ConfigController.php:94 -#: ../../../modules/web/Controllers/ConfigBackupController.php:104 -#: ../../../modules/web/Controllers/ConfigBackupController.php:129 +#: ../../../modules/web/Controllers/ConfigBackupController.php:102 +#: ../../../modules/web/Controllers/ConfigBackupController.php:127 msgid "Proceso de exportación finalizado" msgstr "Export process finished" -#: ../../../modules/api/Controllers/TagController.php:82 -#: ../../../modules/api/Controllers/TagController.php:86 -#: ../../../modules/web/Controllers/TagController.php:230 -msgid "Etiqueta creada" -msgstr "Tag added" +#: ../../../modules/api/Controllers/Help/AccountHelp.php:43 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:54 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:67 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:104 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:142 +msgid "Id de la cuenta" +msgstr "Account Id" -#: ../../../modules/api/Controllers/TagController.php:83 -#: ../../../modules/api/Controllers/TagController.php:111 -#: ../../../modules/api/Controllers/TagController.php:139 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:55 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:68 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:81 +msgid "Clave del token" +msgstr "Token's password" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:56 +msgid "Devolver detalles en la respuesta" +msgstr "Send details in the response" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:69 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:85 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:66 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:72 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:83 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:82 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:85 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:93 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:147 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:155 +#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:31 +#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:288 +#: ../../../modules/web/themes/material-blue/views/config/encryption.inc:291 +#: ../../../modules/web/themes/material-blue/views/config/general-proxy.inc:79 +#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:150 +#: ../../../modules/web/themes/material-blue/views/config/mail.inc:117 +#: ../../../modules/web/themes/material-blue/views/config/mail.inc:124 +#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:250 +#: ../../../modules/web/themes/material-blue/views/config/wiki.inc:257 +#: ../../../modules/web/themes/material-blue/views/install/index.inc:42 +#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:47 +#: ../../../modules/web/themes/material-blue/views/itemshow/authtoken.inc:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:94 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:102 +#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:38 +#: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:45 +#: ../../../modules/web/themes/material-blue/views/login/index.inc:26 +#: ../../../modules/web/themes/material-blue/views/login/index.inc:88 +#: ../../../modules/web/themes/material-blue/views/userpassreset/reset.inc:20 +msgid "Clave" +msgstr "Password" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:70 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:91 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:113 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:89 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:104 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:173 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:129 +#: ../../../modules/web/themes/material-blue/views/account/details.inc:131 +msgid "Fecha Caducidad Clave" +msgstr "Password Expiry Date" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:82 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:105 +#: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:28 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:42 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:22 +#: ../../../modules/web/themes/material-blue/views/account/account-request.inc:24 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:67 +msgid "Nombre de cuenta" +msgstr "Account name" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:83 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:106 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:43 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:78 +msgid "Id de categoría" +msgstr "Category Id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:84 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:107 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:43 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:79 +msgid "Id de cliente" +msgstr "Client Id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:86 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:108 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:99 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:141 +msgid "Usuario de acceso" +msgstr "Access user" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:87 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:109 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:86 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:128 +msgid "URL o IP de acceso" +msgstr "Access URL or IP" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:88 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:110 +#: ../../../modules/web/themes/material-blue/views/account/account-history.inc:124 +#: ../../../modules/web/themes/material-blue/views/account/account-link.inc:78 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:199 +msgid "Notas sobre la cuenta" +msgstr "Notes about the account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:89 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:111 +#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:126 +#: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:106 +msgid "Cuenta Privada" +msgstr "Private Account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:90 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:112 +#: ../../../modules/web/themes/material-blue/views/account/account-permissions.inc:139 +msgid "Cuenta Privada Grupo" +msgstr "Private Account for Group" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:92 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:114 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:228 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:230 +#: ../../../modules/web/themes/material-blue/views/account/viewpass.inc:9 +msgid "Cuenta Vinculada" +msgstr "Linked Account" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:93 +#: ../../../modules/api/Controllers/Help/AccountHelp.php:115 +msgid "Array con Ids de etiquetas" +msgstr "Array with tags id" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:126 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:66 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:67 +#: ../../../modules/api/Controllers/Help/TagHelp.php:65 +#: ../../../modules/web/themes/material-blue/views/account/search-searchbox.inc:16 +msgid "Texto a buscar" +msgstr "Text to search" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:127 +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:67 +#: ../../../modules/api/Controllers/Help/ClientHelp.php:68 +#: ../../../modules/api/Controllers/Help/TagHelp.php:66 +msgid "Número de resultados a mostrar" +msgstr "Number of results to show" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:128 +msgid "Id de categoría a filtrar" +msgstr "Category Id to filter on" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:129 +msgid "Id de cliente a filtrar" +msgstr "Client Id to filter on" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:130 +msgid "Array con Ids de etiquetas a filtrar" +msgstr "Array with tags id for filtering" + +#: ../../../modules/api/Controllers/Help/AccountHelp.php:131 +msgid "Operador de filtrado" +msgstr "Filtering operator" + +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:24 +msgid "Nombre de la categoría" +msgstr "Category name" + +#: ../../../modules/api/Controllers/Help/CategoryHelp.php:55 +#: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:36 +msgid "Descripción de la categoría" +msgstr "Category description" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:27 +msgid "Nombre del cliente" +msgstr "Client name" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:55 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:40 +msgid "Descripción del cliente" +msgstr "Client description" + +#: ../../../modules/api/Controllers/Help/ClientHelp.php:56 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:144 +#: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:63 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:92 +msgid "Global" +msgstr "Global" + +#: ../../../modules/api/Controllers/Help/TagHelp.php:43 +#: ../../../modules/api/Controllers/Help/TagHelp.php:77 +msgid "Id de etiqueta" +msgstr "Tag Id" + +#: ../../../modules/api/Controllers/Help/TagHelp.php:54 +#: ../../../modules/web/themes/material-blue/views/itemshow/tag.inc:24 +msgid "Nombre de la etiqueta" +msgstr "Tag name" + +#: ../../../modules/api/Controllers/TagController.php:61 +msgid "Etiqueta visualizada" +msgstr "Tag displayed" + +#: ../../../modules/api/Controllers/TagController.php:62 +#: ../../../modules/api/Controllers/TagController.php:89 +#: ../../../modules/api/Controllers/TagController.php:117 +#: ../../../modules/api/Controllers/TagController.php:146 msgid "Etiqueta" msgstr "Tag" -#: ../../../modules/api/Controllers/TagController.php:110 -#: ../../../modules/api/Controllers/TagController.php:114 -#: ../../../modules/web/Controllers/TagController.php:259 +#: ../../../modules/api/Controllers/TagController.php:88 +#: ../../../modules/api/Controllers/TagController.php:92 +#: ../../../modules/web/Controllers/TagController.php:229 +msgid "Etiqueta creada" +msgstr "Tag added" + +#: ../../../modules/api/Controllers/TagController.php:116 +#: ../../../modules/api/Controllers/TagController.php:121 +#: ../../../modules/web/Controllers/TagController.php:260 msgid "Etiqueta actualizada" msgstr "Tag updated" -#: ../../../modules/api/Controllers/TagController.php:138 -#: ../../../modules/api/Controllers/TagController.php:142 -#: ../../../modules/web/Controllers/TagController.php:204 +#: ../../../modules/api/Controllers/TagController.php:145 +#: ../../../modules/api/Controllers/TagController.php:149 +#: ../../../modules/web/Controllers/TagController.php:203 msgid "Etiqueta eliminada" msgstr "Tag removed" @@ -2454,9 +2594,9 @@ msgstr "Tag removed" msgid "Es necesario actualizar" msgstr "Updating needed" -#: ../../../modules/web/Controllers/AccountController.php:148 -#: ../../../modules/web/Controllers/AccountController.php:203 -#: ../../../modules/web/Controllers/AccountController.php:474 +#: ../../../modules/web/Controllers/AccountController.php:146 +#: ../../../modules/web/Controllers/AccountController.php:201 +#: ../../../modules/web/Controllers/AccountController.php:473 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:60 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:61 #: ../../../modules/web/themes/material-blue/views/account/linkedAccounts.inc:26 @@ -2464,28 +2604,28 @@ msgstr "Updating needed" msgid "Detalles de Cuenta" msgstr "Account Details" -#: ../../../modules/web/Controllers/AccountController.php:221 +#: ../../../modules/web/Controllers/AccountController.php:220 msgid "Enlace visualizado" msgstr "Link viewed" -#: ../../../modules/web/Controllers/AccountController.php:224 +#: ../../../modules/web/Controllers/AccountController.php:223 msgid "Agente" msgstr "Agent" -#: ../../../modules/web/Controllers/AccountController.php:225 +#: ../../../modules/web/Controllers/AccountController.php:224 msgid "HTTPS" msgstr "HTTPS" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:254 -#: ../../../modules/web/Controllers/AccountController.php:298 -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:274 +#: ../../../modules/web/Controllers/AccountController.php:253 +#: ../../../modules/web/Controllers/AccountController.php:297 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:275 #: ../../../config/actions.xml:151 msgid "Nueva Cuenta" msgstr "New Account" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:342 +#: ../../../modules/web/Controllers/AccountController.php:341 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:176 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:177 #: ../../../modules/web/themes/material-blue/views/account/linkedAccounts.inc:18 @@ -2494,72 +2634,60 @@ msgid "Editar Cuenta" msgstr "Edit Account" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/AccountController.php:387 +#: ../../../modules/web/Controllers/AccountController.php:386 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:312 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:313 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:475 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:476 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:552 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:553 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:147 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:148 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:175 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:176 #: ../../../config/actions.xml:163 ../../../config/actions.xml:481 #: ../../../config/actions.xml:781 msgid "Eliminar Cuenta" msgstr "Remove Account" -#: ../../../modules/web/Controllers/AccountController.php:430 +#: ../../../modules/web/Controllers/AccountController.php:429 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:155 #: ../../../modules/web/Controllers/Helpers/Account/AccountActionsHelper.php:156 msgid "Modificar Clave de Cuenta" msgstr "Edit Account Password" -#: ../../../modules/web/Controllers/AccountController.php:623 -#: ../../../modules/web/Controllers/AccountController.php:653 +#: ../../../modules/web/Controllers/AccountController.php:625 +#: ../../../modules/web/Controllers/AccountController.php:654 msgid "Clave copiada" msgstr "Password copied" -#: ../../../modules/web/Controllers/AccountController.php:734 -#: ../../../modules/web/Controllers/AccountController.php:745 -msgid "Cuenta actualizada" -msgstr "Account updated" - -#: ../../../modules/web/Controllers/AccountController.php:776 -#: ../../../modules/web/Controllers/AccountController.php:787 -#: ../../../modules/web/Controllers/UserController.php:411 -#: ../../../modules/web/Controllers/UserController.php:415 -#: ../../../modules/web/Controllers/UserPassResetController.php:186 -#: ../../../modules/web/Controllers/UserPassResetController.php:190 -msgid "Clave actualizada" -msgstr "Password updated" - -#: ../../../modules/web/Controllers/AccountController.php:816 -#: ../../../modules/web/Controllers/AccountController.php:827 +#: ../../../modules/web/Controllers/AccountController.php:814 +#: ../../../modules/web/Controllers/AccountController.php:825 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:145 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:150 msgid "Cuenta restaurada" msgstr "Account restored" +#: ../../../modules/web/Controllers/AccountController.php:850 #: ../../../modules/web/Controllers/AccountController.php:853 -#: ../../../modules/web/Controllers/AccountController.php:856 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:94 -#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:97 -#: ../../../modules/web/Controllers/AccountManagerController.php:96 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:99 +#: ../../../modules/web/Controllers/AccountHistoryManagerController.php:102 #: ../../../modules/web/Controllers/AccountManagerController.php:99 +#: ../../../modules/web/Controllers/AccountManagerController.php:102 msgid "Cuentas eliminadas" msgstr "Accounts removed" -#: ../../../modules/web/Controllers/AccountController.php:894 +#: ../../../modules/web/Controllers/AccountController.php:890 #: ../../../modules/web/Forms/NotificationForm.php:100 msgid "Es necesaria una descripción" msgstr "A description is needed" -#: ../../../modules/web/Controllers/AccountController.php:902 +#: ../../../modules/web/Controllers/AccountController.php:898 msgid "Solicitante" msgstr "Requester" -#: ../../../modules/web/Controllers/AccountController.php:905 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:77 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:180 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:702 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1255 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1362 +#: ../../../modules/web/Controllers/AccountController.php:901 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:103 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:121 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:106 #: ../../../modules/web/themes/material-blue/views/itemshow/category.inc:29 #: ../../../modules/web/themes/material-blue/views/itemshow/client.inc:33 #: ../../../modules/web/themes/material-blue/views/itemshow/usergroup.inc:33 @@ -2568,138 +2696,142 @@ msgstr "Requester" msgid "Descripción" msgstr "Description" -#: ../../../modules/web/Controllers/AccountController.php:918 +#: ../../../modules/web/Controllers/AccountController.php:914 msgid "Solicitud realizada" msgstr "Request done" -#: ../../../modules/web/Controllers/AccountFavoriteController.php:53 +#: ../../../modules/web/Controllers/AccountFavoriteController.php:55 msgid "Favorito añadido" msgstr "Favorite added" -#: ../../../modules/web/Controllers/AccountFavoriteController.php:69 +#: ../../../modules/web/Controllers/AccountFavoriteController.php:73 msgid "Favorito eliminado" msgstr "Favorite deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:67 -#: ../../../modules/web/Controllers/AccountFileController.php:117 +#: ../../../modules/web/Controllers/AccountFileController.php:69 +#: ../../../modules/web/Controllers/AccountFileController.php:121 msgid "El archivo no existe" msgstr "The file does not exist" -#: ../../../modules/web/Controllers/AccountFileController.php:80 -#: ../../../modules/web/Controllers/AccountFileController.php:93 +#: ../../../modules/web/Controllers/AccountFileController.php:82 +#: ../../../modules/web/Controllers/AccountFileController.php:95 msgid "Archivo visualizado" msgstr "File viewed" -#: ../../../modules/web/Controllers/AccountFileController.php:105 +#: ../../../modules/web/Controllers/AccountFileController.php:107 #: ../../../config/strings.js.inc:40 msgid "Archivo no soportado para visualizar" msgstr "File not supported for preview" -#: ../../../modules/web/Controllers/AccountFileController.php:131 +#: ../../../modules/web/Controllers/AccountFileController.php:135 msgid "Archivo descargado" msgstr "File downloaded" -#: ../../../modules/web/Controllers/AccountFileController.php:152 +#: ../../../modules/web/Controllers/AccountFileController.php:160 msgid "CONSULTA INVÁLIDA" msgstr "INVALID QUERY" -#: ../../../modules/web/Controllers/AccountFileController.php:158 +#: ../../../modules/web/Controllers/AccountFileController.php:166 msgid "No hay extensiones permitidas" msgstr "There aren't any allowed extensions" -#: ../../../modules/web/Controllers/AccountFileController.php:175 +#: ../../../modules/web/Controllers/AccountFileController.php:183 #, php-format msgid "Extensión: %s" msgstr "Extension: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:180 +#: ../../../modules/web/Controllers/AccountFileController.php:188 msgid "Archivo inválido" msgstr "Invalid file" -#: ../../../modules/web/Controllers/AccountFileController.php:182 +#: ../../../modules/web/Controllers/AccountFileController.php:190 #, php-format msgid "Archivo: %s" msgstr "File: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:190 +#: ../../../modules/web/Controllers/AccountFileController.php:198 #, php-format msgid "Máximo tamaño: %s" msgstr "Maximum size: %s" -#: ../../../modules/web/Controllers/AccountFileController.php:198 +#: ../../../modules/web/Controllers/AccountFileController.php:206 msgid "Tamaño de archivo superado" msgstr "File size exceeded" -#: ../../../modules/web/Controllers/AccountFileController.php:200 +#: ../../../modules/web/Controllers/AccountFileController.php:208 #, php-format msgid "Máximo tamaño: %d KB" msgstr "Maximum size: %d KB" -#: ../../../modules/web/Controllers/AccountFileController.php:221 -#: ../../../modules/web/Controllers/AccountFileController.php:230 +#: ../../../modules/web/Controllers/AccountFileController.php:229 +#: ../../../modules/web/Controllers/AccountFileController.php:238 msgid "Archivo guardado" msgstr "File saved" -#: ../../../modules/web/Controllers/AccountFileController.php:226 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:353 +#: ../../../modules/web/Controllers/AccountFileController.php:234 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:106 msgid "Tamaño" msgstr "Size" -#: ../../../modules/web/Controllers/AccountFileController.php:307 -#: ../../../modules/web/Controllers/AccountFileController.php:310 +#: ../../../modules/web/Controllers/AccountFileController.php:318 +#: ../../../modules/web/Controllers/AccountFileController.php:321 msgid "Archivos eliminados" msgstr "Files deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:314 +#: ../../../modules/web/Controllers/AccountFileController.php:326 msgid "Archivo eliminado" msgstr "File deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:320 +#: ../../../modules/web/Controllers/AccountFileController.php:332 msgid "Archivo Eliminado" msgstr "File Deleted" -#: ../../../modules/web/Controllers/AccountFileController.php:357 +#: ../../../modules/web/Controllers/AccountFileController.php:368 msgid "Gestión de archivos deshabilitada" msgstr "Files management disabled" -#: ../../../modules/web/Controllers/AuthTokenController.php:102 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:919 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:920 +#: ../../../modules/web/Controllers/AccountFileController.php:385 +msgid "No hay archivos asociados a la cuenta" +msgstr "There are no linked files for the account" + +#: ../../../modules/web/Controllers/AuthTokenController.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:153 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:154 msgid "Nueva Autorización" msgstr "New Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:166 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:942 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:943 +#: ../../../modules/web/Controllers/AuthTokenController.php:165 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:188 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:189 msgid "Editar Autorización" msgstr "Edit Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:206 -#: ../../../modules/web/Controllers/AuthTokenController.php:209 +#: ../../../modules/web/Controllers/AuthTokenController.php:204 +#: ../../../modules/web/Controllers/AuthTokenController.php:207 msgid "Autorizaciones eliminadas" msgstr "Authorizations deleted" -#: ../../../modules/web/Controllers/AuthTokenController.php:218 -#: ../../../modules/web/Controllers/AuthTokenController.php:222 +#: ../../../modules/web/Controllers/AuthTokenController.php:217 +#: ../../../modules/web/Controllers/AuthTokenController.php:221 msgid "Autorización eliminada" msgstr "Authorization deleted" -#: ../../../modules/web/Controllers/AuthTokenController.php:252 +#: ../../../modules/web/Controllers/AuthTokenController.php:250 msgid "Autorización creada" msgstr "Authorization added" -#: ../../../modules/web/Controllers/AuthTokenController.php:325 +#: ../../../modules/web/Controllers/AuthTokenController.php:322 msgid "Ver Autorización" msgstr "View Authorization" -#: ../../../modules/web/Controllers/AuthTokenController.php:333 +#: ../../../modules/web/Controllers/AuthTokenController.php:330 msgid "Autorización visualizada" msgstr "Authorization viewed" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/CategoryController.php:100 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:112 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:113 +#: ../../../modules/web/Controllers/CategoryController.php:99 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:150 #: ../../../modules/web/themes/material-blue/views/account/account.inc:110 #: ../../../config/actions.xml:301 msgid "Nueva Categoría" @@ -2707,40 +2839,40 @@ msgstr "New Category" #. (itstool) path: action/text #: ../../../modules/web/Controllers/CategoryController.php:162 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:124 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:125 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:167 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:168 #: ../../../config/actions.xml:307 msgid "Editar Categoría" msgstr "Edit Category" -#: ../../../modules/web/Controllers/CategoryController.php:202 -#: ../../../modules/web/Controllers/CategoryController.php:205 +#: ../../../modules/web/Controllers/CategoryController.php:201 +#: ../../../modules/web/Controllers/CategoryController.php:204 msgid "Categorías eliminadas" msgstr "Categories deleted" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/CategoryController.php:321 +#: ../../../modules/web/Controllers/CategoryController.php:315 #: ../../../config/actions.xml:295 msgid "Ver Categoría" msgstr "View Category" -#: ../../../modules/web/Controllers/ClientController.php:101 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:219 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:220 +#: ../../../modules/web/Controllers/ClientController.php:100 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:152 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:153 #: ../../../modules/web/themes/material-blue/views/account/account.inc:86 msgid "Nuevo Cliente" msgstr "New Client" #. (itstool) path: action/text #: ../../../modules/web/Controllers/ClientController.php:163 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:231 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:232 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:170 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:171 #: ../../../config/actions.xml:337 msgid "Editar Cliente" msgstr "Edit Client" -#: ../../../modules/web/Controllers/ClientController.php:202 -#: ../../../modules/web/Controllers/ClientController.php:205 +#: ../../../modules/web/Controllers/ClientController.php:201 +#: ../../../modules/web/Controllers/ClientController.php:204 msgid "Clientes eliminados" msgstr "Clients deleted" @@ -2770,98 +2902,98 @@ msgstr "Public links enabled" msgid "Enlaces públicos deshabilitados" msgstr "Public links disabled" -#: ../../../modules/web/Controllers/ConfigBackupController.php:54 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:91 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:150 +#: ../../../modules/web/Controllers/ConfigBackupController.php:53 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:92 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:151 #: ../../../modules/web/Controllers/ConfigImportController.php:56 #: ../../../modules/web/Controllers/ConfigLdapController.php:216 -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:53 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:55 #: ../../../modules/web/Forms/UserForm.php:131 #: ../../../modules/web/Forms/UserForm.php:153 #: ../../../modules/web/Forms/UserForm.php:171 msgid "Ey, esto es una DEMO!!" msgstr "Ey, this is a DEMO!!" -#: ../../../modules/web/Controllers/ConfigBackupController.php:88 +#: ../../../modules/web/Controllers/ConfigBackupController.php:86 #: ../../../modules/web/Controllers/UserPassResetController.php:173 #: ../../../modules/web/Forms/AccountForm.php:143 #: ../../../modules/web/Forms/UserForm.php:161 msgid "Las claves no coinciden" msgstr "The passwords do not match" -#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/Controllers/ConfigBackupController.php:117 msgid "Verificación de datos exportados finalizada" msgstr "Verification of exported data finished" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:276 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:124 #: ../../../modules/web/themes/material-blue/views/common/aux-customfields.inc:13 #: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:87 msgid "Encriptado" msgstr "Encrypted" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:117 msgid "Sí" msgstr "Yes" -#: ../../../modules/web/Controllers/ConfigBackupController.php:121 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 +#: ../../../modules/web/Controllers/ConfigBackupController.php:119 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:117 msgid "No" msgstr "No" -#: ../../../modules/web/Controllers/ConfigBackupController.php:125 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1089 +#: ../../../modules/web/Controllers/ConfigBackupController.php:123 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:91 #: ../../../modules/web/themes/material-blue/views/account/account.inc:203 #: ../../../modules/web/themes/material-blue/views/account/account.inc:205 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:310 msgid "Etiquetas" msgstr "Tags" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:71 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:72 msgid "Clave maestra no indicada" msgstr "Master password needed" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:75 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:76 msgid "Se ha de confirmar el cambio de clave" msgstr "The password update must be confirmed" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:79 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:80 msgid "Las claves son idénticas" msgstr "The passwords are the same" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:83 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:84 msgid "Las claves maestras no coinciden" msgstr "The master passwords do not match" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:87 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:88 msgid "La clave maestra actual no coincide" msgstr "The current master password does not match" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:137 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:138 msgid "Error al guardar el hash de la clave maestra" msgstr "Error while saving the Master Password's hash" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:158 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:160 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:159 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:161 msgid "Hash de clave maestra actualizado" msgstr "Master password hash updated" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:167 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:168 msgid "Error al actualizar el hash de la clave maestra" msgstr "Error while updating the master password hash" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:189 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:195 -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:199 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:190 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:196 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:200 msgid "Clave Temporal Generada" msgstr "Temporary Password Generated" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:189 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:190 msgid "Email enviado" msgstr "Email sent" -#: ../../../modules/web/Controllers/ConfigEncryptionController.php:195 +#: ../../../modules/web/Controllers/ConfigEncryptionController.php:196 msgid "Error al enviar email" msgstr "Error while sending the email" @@ -2906,7 +3038,7 @@ msgstr "Accounts imported" msgid "Importación finalizada" msgstr "Import finished" -#: ../../../modules/web/Controllers/ConfigImportController.php:82 +#: ../../../modules/web/Controllers/ConfigImportController.php:83 msgid "No se importaron cuentas" msgstr "No accounts were imported" @@ -3073,33 +3205,33 @@ msgstr "DokuWiki enabled" msgid "DokuWiki deshabilitada" msgstr "DokuWiki disabled" -#: ../../../modules/web/Controllers/CustomFieldController.php:102 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:305 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:306 +#: ../../../modules/web/Controllers/CustomFieldController.php:101 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:155 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:156 msgid "Nuevo Campo" msgstr "New Field" #: ../../../modules/web/Controllers/CustomFieldController.php:162 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:317 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:318 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:173 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:174 msgid "Editar Campo" msgstr "Edit Field" -#: ../../../modules/web/Controllers/CustomFieldController.php:198 -#: ../../../modules/web/Controllers/CustomFieldController.php:201 +#: ../../../modules/web/Controllers/CustomFieldController.php:197 +#: ../../../modules/web/Controllers/CustomFieldController.php:200 msgid "Campos eliminados" msgstr "Fields deleted" -#: ../../../modules/web/Controllers/CustomFieldController.php:207 +#: ../../../modules/web/Controllers/CustomFieldController.php:206 msgid "Campo eliminado" msgstr "Field deleted" -#: ../../../modules/web/Controllers/CustomFieldController.php:235 -#: ../../../modules/web/Controllers/CustomFieldController.php:239 +#: ../../../modules/web/Controllers/CustomFieldController.php:234 +#: ../../../modules/web/Controllers/CustomFieldController.php:238 msgid "Campo creado" msgstr "Field added" -#: ../../../modules/web/Controllers/CustomFieldController.php:297 +#: ../../../modules/web/Controllers/CustomFieldController.php:298 msgid "Ver Campo" msgstr "View Field" @@ -3115,8 +3247,8 @@ msgstr "It will be running shortly" msgid "Error en la verificación de la base de datos" msgstr "Error while checking the database" -#: ../../../modules/web/Controllers/EventlogController.php:113 -#: ../../../modules/web/Controllers/EventlogController.php:116 +#: ../../../modules/web/Controllers/EventlogController.php:112 +#: ../../../modules/web/Controllers/EventlogController.php:115 msgid "Registro de eventos vaciado" msgstr "Event log cleared" @@ -3134,7 +3266,7 @@ msgstr "View Current" #: ../../../modules/web/themes/material-blue/views/config/encryption.inc:305 #: ../../../modules/web/themes/material-blue/views/config/general.inc:22 #: ../../../modules/web/themes/material-blue/views/config/import.inc:89 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:149 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:151 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:275 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:420 #: ../../../modules/web/themes/material-blue/views/config/mail.inc:206 @@ -3241,116 +3373,18 @@ msgid "Ordenar por URL / IP" msgstr "Sort by URL / IP" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:101 -#: ../../../config/actions.xml:319 -msgid "Buscar Categoría" -msgstr "Search for Category" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:136 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:137 -#: ../../../config/actions.xml:313 -msgid "Eliminar Categoría" -msgstr "Delete Category" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:189 -#: ../../../config/strings.js.inc:66 -msgid "SI" -msgstr "YES" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:189 -#: ../../../config/strings.js.inc:67 -msgid "NO" -msgstr "NO" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:208 -#: ../../../config/actions.xml:349 -msgid "Buscar Cliente" -msgstr "Search for Client" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:242 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:243 -#: ../../../config/actions.xml:343 -msgid "Eliminar Cliente" -msgstr "Delete Client" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:264 -#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:46 -#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:48 -msgid "Módulo" -msgstr "Module" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:266 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:577 -msgid "Propiedades" -msgstr "Properties" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:286 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:27 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:342 -msgid "Campos Personalizados" -msgstr "Custom Fields" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:294 -msgid "Buscar Campo" -msgstr "Search for Field" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:328 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:329 -msgid "Eliminar Campo" -msgstr "Delete Field" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:374 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:35 -#: ../../../modules/web/themes/material-blue/views/config/accounts.inc:277 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:146 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:406 -#: ../../../config/actions.xml:19 -msgid "Archivos" -msgstr "Files" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:382 -#: ../../../config/actions.xml:469 -msgid "Buscar Archivo" -msgstr "Search for File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:393 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:394 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:45 -#: ../../../config/actions.xml:199 ../../../config/actions.xml:445 -msgid "Ver Archivo" -msgstr "View File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:405 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:406 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:38 -#: ../../../config/actions.xml:211 ../../../config/actions.xml:451 -msgid "Descargar Archivo" -msgstr "Download File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:416 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:417 -#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:30 -#: ../../../config/actions.xml:217 ../../../config/actions.xml:457 -msgid "Eliminar Archivo" -msgstr "Delete File" - -#. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:464 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:531 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountGrid.php:132 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:143 #: ../../../config/actions.xml:487 ../../../config/actions.xml:787 msgid "Buscar Cuenta" msgstr "Search for Account" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:499 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1359 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:90 +msgid "Cuentas (H)" +msgstr "Accounts (H)" + +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:105 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:118 #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:98 #: ../../../modules/web/themes/material-blue/views/account/account-history.inc:112 #: ../../../modules/web/themes/material-blue/views/account/account.inc:182 @@ -3360,209 +3394,327 @@ msgstr "Search for Account" msgid "Fecha" msgstr "Date" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:500 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1153 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1363 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:122 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:102 msgid "Estado" msgstr "Status" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:512 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:127 msgid "Modificada" msgstr "Modified" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:513 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:128 msgid "Eliminada" msgstr "Removed" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:523 -msgid "Cuentas (H)" -msgstr "Accounts (H)" - #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:542 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:543 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:158 +#: ../../../modules/web/Controllers/Helpers/Grid/AccountHistoryGrid.php:159 #: ../../../config/actions.xml:181 ../../../config/actions.xml:793 msgid "Restaurar Cuenta" msgstr "Account Restore" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:574 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1253 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:358 +msgid "Autorizaciones API" +msgstr "API Authorizations" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:138 +msgid "Buscar Token" +msgstr "Search for Token" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:171 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:172 +msgid "Ver token de Autorización" +msgstr "View Authorization token" + +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:205 +#: ../../../modules/web/Controllers/Helpers/Grid/AuthTokenGrid.php:206 +msgid "Eliminar Autorización" +msgstr "Delete Authorization" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:134 +#: ../../../config/actions.xml:319 +msgid "Buscar Categoría" +msgstr "Search for Category" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:184 +#: ../../../modules/web/Controllers/Helpers/Grid/CategoryGrid.php:185 +#: ../../../config/actions.xml:313 +msgid "Eliminar Categoría" +msgstr "Delete Category" + +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:120 +#: ../../../config/strings.js.inc:66 +msgid "SI" +msgstr "YES" + +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:120 +#: ../../../config/strings.js.inc:67 +msgid "NO" +msgstr "NO" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:137 +#: ../../../config/actions.xml:349 +msgid "Buscar Cliente" +msgstr "Search for Client" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:187 +#: ../../../modules/web/Controllers/Helpers/Grid/ClientGrid.php:188 +#: ../../../config/actions.xml:343 +msgid "Eliminar Cliente" +msgstr "Delete Client" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:91 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:27 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:342 +msgid "Campos Personalizados" +msgstr "Custom Fields" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:104 +#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:46 +#: ../../../modules/web/themes/material-blue/views/itemshow/customfield.inc:48 +msgid "Módulo" +msgstr "Module" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:106 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:118 +msgid "Propiedades" +msgstr "Properties" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:140 +msgid "Buscar Campo" +msgstr "Search for Field" + +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:190 +#: ../../../modules/web/Controllers/Helpers/Grid/CustomFieldGrid.php:191 +msgid "Eliminar Campo" +msgstr "Delete Field" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:88 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:331 +#: ../../../modules/web/themes/material-blue/views/eventlog/index.inc:1 +#: ../../../config/actions.xml:127 +msgid "Registro de Eventos" +msgstr "Event Log" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:101 +msgid "Fecha / Hora" +msgstr "Date / Time" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:102 +msgid "Nivel" +msgstr "Level" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:103 +msgid "Evento" +msgstr "Event" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:104 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:115 #: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:45 #: ../../../modules/web/themes/material-blue/views/itemshow/userpass.inc:26 msgid "Login" msgstr "Login" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:575 -#: ../../../modules/web/Controllers/UserProfileController.php:216 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:123 -#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:125 -msgid "Perfil" -msgstr "Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:105 +msgid "IP" +msgstr "IP" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:167 +msgid "Buscar Evento" +msgstr "Search for Events" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:182 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:183 +msgid "Refrescar" +msgstr "Refresh" + +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:200 +#: ../../../modules/web/Controllers/Helpers/Grid/EventlogGrid.php:201 +msgid "Vaciar registro de eventos" +msgstr "Clear event log" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:607 -#: ../../../config/actions.xml:589 -msgid "Buscar Usuario" -msgstr "Search for User" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:90 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:35 +#: ../../../modules/web/themes/material-blue/views/config/accounts.inc:277 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:146 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:406 +#: ../../../config/actions.xml:19 +msgid "Archivos" +msgstr "Files" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:617 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:618 -#: ../../../modules/web/Controllers/UserController.php:106 -#: ../../../config/actions.xml:565 -msgid "Nuevo Usuario" -msgstr "New User" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:632 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:633 -#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:440 -msgid "Importar usuarios de LDAP" -msgstr "Import users from LDAP" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:646 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:647 -msgid "Ver Detalles de Usuario" -msgstr "View User Details" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:141 +#: ../../../config/actions.xml:469 +msgid "Buscar Archivo" +msgstr "Search for File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:657 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:658 -#: ../../../modules/web/Controllers/UserController.php:191 -#: ../../../config/actions.xml:571 -msgid "Editar Usuario" -msgstr "Edit User" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:668 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:669 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:61 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:119 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:124 -msgid "Cambiar Clave de Usuario" -msgstr "Change User's Password" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:156 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:157 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:45 +#: ../../../config/actions.xml:199 ../../../config/actions.xml:445 +msgid "Ver Archivo" +msgstr "View File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:680 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:681 -#: ../../../config/actions.xml:577 -msgid "Eliminar Usuario" -msgstr "Delete User" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:173 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:174 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:38 +#: ../../../config/actions.xml:211 ../../../config/actions.xml:451 +msgid "Descargar Archivo" +msgstr "Download File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:726 -#: ../../../config/actions.xml:619 -msgid "Buscar Grupo" -msgstr "Search for Group" +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:190 +#: ../../../modules/web/Controllers/Helpers/Grid/FileGrid.php:191 +#: ../../../modules/web/themes/material-blue/views/account/files-list.inc:30 +#: ../../../config/actions.xml:217 ../../../config/actions.xml:457 +msgid "Eliminar Archivo" +msgstr "Delete File" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:737 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:738 -#: ../../../modules/web/Controllers/UserGroupController.php:107 -#: ../../../config/actions.xml:601 -msgid "Nuevo Grupo" -msgstr "New Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:105 +#: ../../../modules/web/themes/material-blue/inc/Icons.php:67 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:105 +#: ../../../modules/web/themes/material-blue/views/notification/index.inc:1 +#: ../../../config/actions.xml:667 +msgid "Notificaciones" +msgstr "Notifications" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:120 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:28 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:35 +msgid "Componente" +msgstr "Component" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:142 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:104 +#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:108 +msgid "Leída" +msgstr "Read" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:143 +msgid "Sólo Admins" +msgstr "Only Admins" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:749 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:750 -#: ../../../modules/web/Controllers/UserGroupController.php:321 -#: ../../../config/actions.xml:595 -msgid "Ver Grupo" -msgstr "View Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:160 +#: ../../../config/actions.xml:829 +msgid "Buscar Notificación" +msgstr "Search for Notification" + +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:175 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:176 +#: ../../../modules/web/Controllers/NotificationController.php:179 +msgid "Nueva Notificación" +msgstr "New Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:760 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:761 -#: ../../../modules/web/Controllers/UserGroupController.php:171 -#: ../../../config/actions.xml:607 -msgid "Editar Grupo" -msgstr "Edit Group" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:193 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:194 +#: ../../../modules/web/Controllers/NotificationController.php:103 +#: ../../../config/actions.xml:799 +msgid "Ver Notificación" +msgstr "View Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:771 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:772 -#: ../../../config/actions.xml:613 -msgid "Eliminar Grupo" -msgstr "Delete Group" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:807 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:278 -msgid "Perfiles" -msgstr "Profiles" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:223 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:224 +#: ../../../config/actions.xml:823 +msgid "Marcar Notificación" +msgstr "Checkout Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:815 -#: ../../../config/actions.xml:649 -msgid "Buscar Perfil" -msgstr "Search for Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:241 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:242 +#: ../../../modules/web/Controllers/NotificationController.php:210 +#: ../../../config/actions.xml:811 +msgid "Editar Notificación" +msgstr "Edit Notification" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:826 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:827 -#: ../../../modules/web/Controllers/UserProfileController.php:101 -#: ../../../config/actions.xml:631 -msgid "Nuevo Perfil" -msgstr "New Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:258 +#: ../../../modules/web/Controllers/Helpers/Grid/NotificationGrid.php:259 +#: ../../../config/actions.xml:817 +msgid "Eliminar Notificación" +msgstr "Delete Notification" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:838 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:839 -msgid "Ver Detalles de Perfil" -msgstr "View Profile Details" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:89 +msgid "Plugins" +msgstr "Plugins" + +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:101 +msgid "Plugin" +msgstr "Plugin" + +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:118 +msgid "No disponible" +msgstr "Unavailable" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:849 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:850 -#: ../../../modules/web/Controllers/UserProfileController.php:166 -#: ../../../config/actions.xml:637 -msgid "Editar Perfil" -msgstr "Edit Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:134 +#: ../../../config/actions.xml:535 +msgid "Buscar Plugin" +msgstr "Search for Plugin" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:860 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:861 -#: ../../../config/actions.xml:643 -msgid "Eliminar Perfil" -msgstr "Delete Profile" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:150 +#: ../../../modules/web/Controllers/PluginController.php:120 +#: ../../../config/actions.xml:529 +msgid "Ver Plugin" +msgstr "View Plugin" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:900 -#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:358 -msgid "Autorizaciones API" -msgstr "API Authorizations" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:166 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:167 +msgid "Habilitar" +msgstr "Enable" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:908 -msgid "Buscar Token" -msgstr "Search for Token" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:185 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:186 +msgid "Deshabilitar" +msgstr "Disable" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:931 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:932 -msgid "Ver token de Autorización" -msgstr "View Authorization token" +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:204 +#: ../../../modules/web/Controllers/Helpers/Grid/PluginGrid.php:205 +msgid "Restablecer Datos" +msgstr "Reset Data" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:953 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:954 -msgid "Eliminar Autorización" -msgstr "Delete Authorization" +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/account/account.inc:43 +msgid "Enlaces" +msgstr "Links" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:976 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:107 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:45 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:47 msgid "Fecha Creación" msgstr "Creation Date" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:977 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:108 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:182 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:53 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:55 msgid "Fecha Caducidad" msgstr "Expiry Date " -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:979 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:110 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:32 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:35 #: ../../../modules/web/themes/material-blue/views/itemshow/publiclink.inc:39 msgid "Notificar" msgstr "Notify" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:980 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:111 #: ../../../modules/web/themes/material-blue/views/account/details.inc:9 #: ../../../modules/web/themes/material-blue/views/account/details.inc:11 #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:184 @@ -3571,236 +3723,210 @@ msgstr "Notify" msgid "Visitas" msgstr "Visits" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1001 -#: ../../../modules/web/themes/material-blue/views/account/account.inc:43 -msgid "Enlaces" -msgstr "Links" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1009 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:146 msgid "Buscar Enlace" msgstr "Search for Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1020 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1021 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:161 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:162 msgid "Nuevo Enlace" msgstr "New Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1032 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1033 -#: ../../../modules/web/Controllers/PublicLinkController.php:343 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:179 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:180 +#: ../../../modules/web/Controllers/PublicLinkController.php:336 msgid "Ver Enlace" msgstr "View Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1042 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1043 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:195 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:196 msgid "Renovar Enlace" msgstr "Renew Link" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1053 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1054 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:212 +#: ../../../modules/web/Controllers/Helpers/Grid/PublicLinkGrid.php:213 msgid "Eliminar Enlace" msgstr "Delete Link" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1097 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:132 #: ../../../config/actions.xml:517 msgid "Buscar Etiqueta" msgstr "Search for Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1108 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1109 -#: ../../../modules/web/Controllers/TagController.php:99 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:147 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:148 +#: ../../../modules/web/Controllers/TagController.php:98 #: ../../../config/actions.xml:493 msgid "Nueva Etiqueta" msgstr "New Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1120 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1121 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:165 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:166 #: ../../../modules/web/Controllers/TagController.php:157 #: ../../../config/actions.xml:505 msgid "Editar Etiqueta" msgstr "Edit Tag" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1131 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1132 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:182 +#: ../../../modules/web/Controllers/Helpers/Grid/TagGrid.php:183 #: ../../../config/actions.xml:511 msgid "Eliminar Etiqueta" msgstr "Delete Tag" -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1152 -msgid "Plugin" -msgstr "Plugin" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1161 -msgid "No disponible" -msgstr "Unavailable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1171 -msgid "Plugins" -msgstr "Plugins" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:116 +#: ../../../modules/web/Controllers/UserProfileController.php:216 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:123 +#: ../../../modules/web/themes/material-blue/views/itemshow/user.inc:125 +msgid "Perfil" +msgstr "Profile" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1179 -#: ../../../config/actions.xml:535 -msgid "Buscar Plugin" -msgstr "Search for Plugin" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:154 +#: ../../../config/actions.xml:589 +msgid "Buscar Usuario" +msgstr "Search for User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1190 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1191 -#: ../../../modules/web/Controllers/PluginController.php:120 -#: ../../../config/actions.xml:529 -msgid "Ver Plugin" -msgstr "View Plugin" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1201 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1202 -msgid "Habilitar" -msgstr "Enable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1214 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1215 -msgid "Deshabilitar" -msgstr "Disable" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1227 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1228 -msgid "Restablecer Datos" -msgstr "Reset Data" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1249 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:138 -#: ../../../modules/web/themes/material-blue/views/account/details.inc:140 -msgid "ID" -msgstr "ID" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1250 -msgid "Fecha / Hora" -msgstr "Date / Time" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1251 -msgid "Nivel" -msgstr "Level" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1252 -msgid "Evento" -msgstr "Event" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1254 -msgid "IP" -msgstr "IP" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:169 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:170 +#: ../../../modules/web/Controllers/UserController.php:105 +#: ../../../config/actions.xml:565 +msgid "Nuevo Usuario" +msgstr "New User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1303 -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:330 -#: ../../../modules/web/themes/material-blue/views/eventlog/index.inc:1 -#: ../../../config/actions.xml:127 -msgid "Registro de Eventos" -msgstr "Event Log" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1311 -msgid "Buscar Evento" -msgstr "Search for Events" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1320 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1321 -msgid "Refrescar" -msgstr "Refresh" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1332 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1333 -msgid "Vaciar registro de eventos" -msgstr "Clear event log" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1361 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:28 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:35 -msgid "Componente" -msgstr "Component" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1375 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:104 -#: ../../../modules/web/themes/material-blue/views/notification/notification.inc:108 -msgid "Leída" -msgstr "Read" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1376 -msgid "Sólo Admins" -msgstr "Only Admins" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:187 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:188 +#: ../../../modules/web/Controllers/UserController.php:190 +#: ../../../config/actions.xml:571 +msgid "Editar Usuario" +msgstr "Edit User" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1387 -#: ../../../modules/web/themes/material-blue/inc/Icons.php:67 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:104 -#: ../../../modules/web/themes/material-blue/views/notification/index.inc:1 -#: ../../../config/actions.xml:667 -msgid "Notificaciones" -msgstr "Notifications" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:204 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:205 +#: ../../../config/actions.xml:577 +msgid "Eliminar Usuario" +msgstr "Delete User" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:221 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:222 +#: ../../../modules/web/themes/material-blue/views/config/ldap.inc:440 +msgid "Importar usuarios de LDAP" +msgstr "Import users from LDAP" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:236 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:237 +msgid "Ver Detalles de Usuario" +msgstr "View User Details" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:253 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGrid.php:254 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:62 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:120 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:126 +msgid "Cambiar Clave de Usuario" +msgstr "Change User's Password" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1395 -#: ../../../config/actions.xml:829 -msgid "Buscar Notificación" -msgstr "Search for Notification" - -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1407 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1408 -#: ../../../modules/web/Controllers/NotificationController.php:181 -msgid "Nueva Notificación" -msgstr "New Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:136 +#: ../../../config/actions.xml:619 +msgid "Buscar Grupo" +msgstr "Search for Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1420 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1421 -#: ../../../modules/web/Controllers/NotificationController.php:105 -#: ../../../config/actions.xml:799 -msgid "Ver Notificación" -msgstr "View Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:151 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:152 +#: ../../../modules/web/Controllers/UserGroupController.php:106 +#: ../../../config/actions.xml:601 +msgid "Nuevo Grupo" +msgstr "New Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1430 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1431 -#: ../../../config/actions.xml:823 -msgid "Marcar Notificación" -msgstr "Checkout Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:169 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:170 +#: ../../../modules/web/Controllers/UserGroupController.php:319 +#: ../../../config/actions.xml:595 +msgid "Ver Grupo" +msgstr "View Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1442 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1443 -#: ../../../modules/web/Controllers/NotificationController.php:213 -#: ../../../config/actions.xml:811 -msgid "Editar Notificación" -msgstr "Edit Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:186 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:187 +#: ../../../modules/web/Controllers/UserGroupController.php:171 +#: ../../../config/actions.xml:607 +msgid "Editar Grupo" +msgstr "Edit Group" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1453 -#: ../../../modules/web/Controllers/Helpers/ItemsGridHelper.php:1454 -#: ../../../config/actions.xml:817 -msgid "Eliminar Notificación" -msgstr "Delete Notification" +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:203 +#: ../../../modules/web/Controllers/Helpers/Grid/UserGroupGrid.php:204 +#: ../../../config/actions.xml:613 +msgid "Eliminar Grupo" +msgstr "Delete Group" -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:261 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:93 +#: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:278 +msgid "Perfiles" +msgstr "Profiles" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:134 +#: ../../../config/actions.xml:649 +msgid "Buscar Perfil" +msgstr "Search for Profile" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:149 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:150 +#: ../../../modules/web/Controllers/UserProfileController.php:100 +#: ../../../config/actions.xml:631 +msgid "Nuevo Perfil" +msgstr "New Profile" + +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:167 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:168 +msgid "Ver Detalles de Perfil" +msgstr "View Profile Details" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:184 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:185 +#: ../../../modules/web/Controllers/UserProfileController.php:166 +#: ../../../config/actions.xml:637 +msgid "Editar Perfil" +msgstr "Edit Profile" + +#. (itstool) path: action/text +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:201 +#: ../../../modules/web/Controllers/Helpers/Grid/UserProfileGrid.php:202 +#: ../../../config/actions.xml:643 +msgid "Eliminar Perfil" +msgstr "Delete Profile" + +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:262 #: ../../../modules/web/themes/material-blue/inc/Icons.php:60 msgid "Buscar" msgstr "Search" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:288 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:289 #: ../../../config/actions.xml:103 msgid "Usuarios y Accesos" msgstr "Users and Accesses" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:302 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:303 #: ../../../config/actions.xml:43 msgid "Elementos y Personalización" msgstr "Items and Customizations" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:316 +#: ../../../modules/web/Controllers/Helpers/LayoutHelper.php:317 #: ../../../modules/web/themes/material-blue/inc/Icons.php:63 #: ../../../modules/web/themes/material-blue/views/config/ldap.inc:21 #: ../../../modules/web/themes/material-blue/views/itemshow/userprofile.inc:23 @@ -3808,54 +3934,32 @@ msgstr "Items and Customizations" msgid "Configuración" msgstr "Configuration" -#: ../../../modules/web/Controllers/InstallController.php:62 -msgid "Versión de PHP requerida >= " -msgstr "Required PHP version >=" - -#: ../../../modules/web/Controllers/InstallController.php:73 +#: ../../../modules/web/Controllers/InstallController.php:59 msgid "Módulo no disponible" msgstr "Module unavailable" -#: ../../../modules/web/Controllers/InstallController.php:74 +#: ../../../modules/web/Controllers/InstallController.php:60 msgid "Sin este módulo la aplicación puede no funcionar correctamente." msgstr "Without this module the application could not run correctly" -#: ../../../modules/web/Controllers/InstallController.php:82 -msgid "La version de PHP es vulnerable al ataque NULL Byte (CVE-2006-7243)" -msgstr "This PHP version is vulnerable to NULL Byte attack CVE-2006-7243)" - -#: ../../../modules/web/Controllers/InstallController.php:83 -msgid "Actualice la versión de PHP para usar sysPass de forma segura" -msgstr "Please update PHP version to run sysPass in a secure way" - #: ../../../modules/web/Controllers/InstallController.php:89 -msgid "No se encuentra el generador de números aleatorios." -msgstr "Cannot find random number generator." - -#: ../../../modules/web/Controllers/InstallController.php:90 -msgid "" -"Sin esta función un atacante puede utilizar su cuenta al resetear la clave" -msgstr "" -"Without this function, an attacker could take your account on password reset." - -#: ../../../modules/web/Controllers/InstallController.php:121 msgid "Instalación finalizada" msgstr "Installation finished" -#: ../../../modules/web/Controllers/LoginController.php:104 +#: ../../../modules/web/Controllers/LoginController.php:101 msgid "Finalizar sesión" msgstr "Logout session" -#: ../../../modules/web/Controllers/LoginController.php:106 +#: ../../../modules/web/Controllers/LoginController.php:103 msgid "Tiempo inactivo" msgstr "Inactive time" -#: ../../../modules/web/Controllers/LoginController.php:107 +#: ../../../modules/web/Controllers/LoginController.php:104 msgid "Tiempo total" msgstr "Total time" -#: ../../../modules/web/Controllers/NotificationController.php:252 -#: ../../../modules/web/Controllers/NotificationController.php:255 +#: ../../../modules/web/Controllers/NotificationController.php:251 +#: ../../../modules/web/Controllers/NotificationController.php:254 msgid "Notificaciones eliminadas" msgstr "Notifications deleted" @@ -3864,82 +3968,82 @@ msgstr "Notifications deleted" msgid "Notificación eliminada" msgstr "Notification deleted" -#: ../../../modules/web/Controllers/NotificationController.php:296 -#: ../../../modules/web/Controllers/NotificationController.php:300 +#: ../../../modules/web/Controllers/NotificationController.php:297 +#: ../../../modules/web/Controllers/NotificationController.php:301 msgid "Notificación leída" msgstr "Notification read" -#: ../../../modules/web/Controllers/NotificationController.php:326 -#: ../../../modules/web/Controllers/NotificationController.php:329 +#: ../../../modules/web/Controllers/NotificationController.php:327 +#: ../../../modules/web/Controllers/NotificationController.php:330 msgid "Notificación creada" msgstr "Notification created" -#: ../../../modules/web/Controllers/NotificationController.php:357 #: ../../../modules/web/Controllers/NotificationController.php:360 +#: ../../../modules/web/Controllers/NotificationController.php:363 msgid "Notificación actualizada" msgstr "Notification updated" -#: ../../../modules/web/Controllers/PluginController.php:176 #: ../../../modules/web/Controllers/PluginController.php:179 +#: ../../../modules/web/Controllers/PluginController.php:182 msgid "Plugin habilitado" msgstr "Plugin enabled" -#: ../../../modules/web/Controllers/PluginController.php:199 -#: ../../../modules/web/Controllers/PluginController.php:202 +#: ../../../modules/web/Controllers/PluginController.php:204 +#: ../../../modules/web/Controllers/PluginController.php:207 msgid "Plugin deshabilitado" msgstr "Plugin disabled" -#: ../../../modules/web/Controllers/PluginController.php:222 -#: ../../../modules/web/Controllers/PluginController.php:225 +#: ../../../modules/web/Controllers/PluginController.php:229 +#: ../../../modules/web/Controllers/PluginController.php:232 msgid "Plugin restablecido" msgstr "Plugin reset" -#: ../../../modules/web/Controllers/PublicLinkController.php:105 +#: ../../../modules/web/Controllers/PublicLinkController.php:104 msgid "Nuevo Enlace Público" msgstr "New Public Link" -#: ../../../modules/web/Controllers/PublicLinkController.php:193 +#: ../../../modules/web/Controllers/PublicLinkController.php:191 msgid "Editar Enlace Público" msgstr "Edit Public Link" +#: ../../../modules/web/Controllers/PublicLinkController.php:229 #: ../../../modules/web/Controllers/PublicLinkController.php:232 -#: ../../../modules/web/Controllers/PublicLinkController.php:235 msgid "Enlaces eliminados" msgstr "Links deleted" -#: ../../../modules/web/Controllers/PublicLinkController.php:243 -#: ../../../modules/web/Controllers/PublicLinkController.php:247 +#: ../../../modules/web/Controllers/PublicLinkController.php:240 +#: ../../../modules/web/Controllers/PublicLinkController.php:244 msgid "Enlace eliminado" msgstr "Link deleted" -#: ../../../modules/web/Controllers/PublicLinkController.php:276 -#: ../../../modules/web/Controllers/PublicLinkController.php:312 +#: ../../../modules/web/Controllers/PublicLinkController.php:270 +#: ../../../modules/web/Controllers/PublicLinkController.php:305 msgid "Enlace creado" msgstr "Link created" -#: ../../../modules/web/Controllers/StatusController.php:90 +#: ../../../modules/web/Controllers/StatusController.php:91 msgid "Versión no disponible" msgstr "Version unavailable" -#: ../../../modules/web/Controllers/StatusController.php:135 +#: ../../../modules/web/Controllers/StatusController.php:136 msgid "Notificaciones no disponibles" msgstr "Notifications not available" -#: ../../../modules/web/Controllers/TagController.php:196 +#: ../../../modules/web/Controllers/TagController.php:195 msgid "Etiquetas eliminadas" msgstr "Tags deleted" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/TagController.php:282 +#: ../../../modules/web/Controllers/TagController.php:283 #: ../../../config/actions.xml:499 msgid "Ver Etiqueta" msgstr "View Tag" -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:66 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:68 msgid "Configuración actualizada" msgstr "Configuration updated" -#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:70 +#: ../../../modules/web/Controllers/Traits/ConfigTrait.php:72 msgid "Error al guardar la configuración" msgstr "Error while saving the configuration" @@ -3947,66 +4051,66 @@ msgstr "Error while saving the configuration" msgid "Error al actualizar los datos del campo personalizado" msgstr "Error while updating custom field's data" -#: ../../../modules/web/Controllers/UpgradeController.php:66 +#: ../../../modules/web/Controllers/UpgradeController.php:65 msgid "Es necesario confirmar la actualización" msgstr "The updating need to be confirmed" -#: ../../../modules/web/Controllers/UpgradeController.php:70 +#: ../../../modules/web/Controllers/UpgradeController.php:69 msgid "Código de seguridad incorrecto" msgstr "Wrong security code" -#: ../../../modules/web/Controllers/UpgradeController.php:91 +#: ../../../modules/web/Controllers/UpgradeController.php:90 #: ../../../modules/web/themes/material-blue/views/login/index.inc:78 msgid "Aplicación actualizada correctamente" msgstr "Application successfully updated" -#: ../../../modules/web/Controllers/UpgradeController.php:91 +#: ../../../modules/web/Controllers/UpgradeController.php:90 msgid "En 5 segundos será redirigido al login" msgstr "You will be redirected to log in within 5 seconds" -#: ../../../modules/web/Controllers/UserController.php:268 -#: ../../../modules/web/Controllers/UserController.php:271 +#: ../../../modules/web/Controllers/UserController.php:266 +#: ../../../modules/web/Controllers/UserController.php:269 msgid "Usuarios eliminados" msgstr "Users deleted" -#: ../../../modules/web/Controllers/UserController.php:279 -#: ../../../modules/web/Controllers/UserController.php:283 +#: ../../../modules/web/Controllers/UserController.php:277 +#: ../../../modules/web/Controllers/UserController.php:281 msgid "Usuario eliminado" msgstr "User deleted" -#: ../../../modules/web/Controllers/UserController.php:313 -#: ../../../modules/web/Controllers/UserController.php:319 +#: ../../../modules/web/Controllers/UserController.php:311 +#: ../../../modules/web/Controllers/UserController.php:317 msgid "Usuario creado" msgstr "User added" -#: ../../../modules/web/Controllers/UserController.php:374 -#: ../../../modules/web/Controllers/UserController.php:380 +#: ../../../modules/web/Controllers/UserController.php:371 +#: ../../../modules/web/Controllers/UserController.php:377 msgid "Usuario actualizado" msgstr "User updated" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/UserController.php:439 +#: ../../../modules/web/Controllers/UserController.php:438 #: ../../../config/actions.xml:559 msgid "Ver Usuario" msgstr "View User" -#: ../../../modules/web/Controllers/UserGroupController.php:209 -#: ../../../modules/web/Controllers/UserGroupController.php:212 +#: ../../../modules/web/Controllers/UserGroupController.php:208 +#: ../../../modules/web/Controllers/UserGroupController.php:211 msgid "Grupos eliminados" msgstr "Groups deleted" -#: ../../../modules/web/Controllers/UserGroupController.php:220 -#: ../../../modules/web/Controllers/UserGroupController.php:224 +#: ../../../modules/web/Controllers/UserGroupController.php:219 +#: ../../../modules/web/Controllers/UserGroupController.php:223 msgid "Grupo eliminado" msgstr "Group deleted" -#: ../../../modules/web/Controllers/UserGroupController.php:254 -#: ../../../modules/web/Controllers/UserGroupController.php:258 +#: ../../../modules/web/Controllers/UserGroupController.php:253 +#: ../../../modules/web/Controllers/UserGroupController.php:257 msgid "Grupo creado" msgstr "Group added" -#: ../../../modules/web/Controllers/UserGroupController.php:294 -#: ../../../modules/web/Controllers/UserGroupController.php:298 +#: ../../../modules/web/Controllers/UserGroupController.php:292 +#: ../../../modules/web/Controllers/UserGroupController.php:296 msgid "Grupo actualizado" msgstr "Group updated" @@ -4035,13 +4139,13 @@ msgid "En breve recibirá un correo para completar la solicitud." msgstr "You will receive an email to complete the request shortly." #: ../../../modules/web/Controllers/UserPassResetController.php:169 -#: ../../../modules/web/Forms/AuthTokenForm.php:104 +#: ../../../modules/web/Forms/AuthTokenForm.php:101 #: ../../../modules/web/Forms/UserForm.php:157 msgid "La clave no puede estar en blanco" msgstr "Password cannot be blank" -#: ../../../modules/web/Controllers/UserProfileController.php:204 -#: ../../../modules/web/Controllers/UserProfileController.php:207 +#: ../../../modules/web/Controllers/UserProfileController.php:203 +#: ../../../modules/web/Controllers/UserProfileController.php:206 msgid "Perfiles eliminados" msgstr "Profiles deleted" @@ -4050,16 +4154,16 @@ msgstr "Profiles deleted" msgid "Perfil eliminado" msgstr "Profile deleted" -#: ../../../modules/web/Controllers/UserProfileController.php:249 +#: ../../../modules/web/Controllers/UserProfileController.php:248 msgid "Perfil creado" msgstr "Profile added" -#: ../../../modules/web/Controllers/UserProfileController.php:286 +#: ../../../modules/web/Controllers/UserProfileController.php:284 msgid "Perfil actualizado" msgstr "Profile updated" #. (itstool) path: action/text -#: ../../../modules/web/Controllers/UserProfileController.php:309 +#: ../../../modules/web/Controllers/UserProfileController.php:307 #: ../../../config/actions.xml:625 msgid "Ver Perfil" msgstr "View Profile" @@ -4093,11 +4197,11 @@ msgstr "An username is needed" msgid "Es necesario una categoría" msgstr "A category is needed" -#: ../../../modules/web/Forms/AuthTokenForm.php:90 +#: ../../../modules/web/Forms/AuthTokenForm.php:91 msgid "Usuario no indicado" msgstr "User not set" -#: ../../../modules/web/Forms/AuthTokenForm.php:94 +#: ../../../modules/web/Forms/AuthTokenForm.php:95 msgid "Acción no indicada" msgstr "Action not set" @@ -4578,29 +4682,29 @@ msgid "Javascript es necesario para el correcto funcionamiento" msgstr "Javascript is needed in order to run correctly" #: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:40 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:109 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:110 #, php-format msgid "Hay %d notificaciones pendientes" msgstr "There are %d unread notifications" #: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:42 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:111 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:112 msgid "No hay no hay notificaciones pendientes" msgstr "There aren't any pending notifications" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:68 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:129 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:69 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:131 msgid "Preferencias de usuario" msgstr "User preferences" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:72 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:75 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:147 -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:150 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:73 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:76 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:149 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:152 msgid "Salir" msgstr "Sign Out" -#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:163 +#: ../../../modules/web/themes/material-blue/views/_partials/fixed-header.inc:165 #: ../../../modules/web/themes/material-blue/views/_partials/footer.inc:43 msgid "Demo" msgstr "Demo" @@ -4624,6 +4728,11 @@ msgstr "Help :: FAQ :: Changelog" msgid "Un proyecto de cygnux.org" msgstr "A cygnux.org project" +#: ../../../modules/web/themes/material-blue/views/_partials/no_records_found.inc:4 +#: ../../../modules/web/themes/material-blue/views/account/search-index.inc:11 +msgid "No se encontraron registros" +msgstr "No records found" + #: ../../../modules/web/themes/material-blue/views/account/account-editpass.inc:77 #: ../../../modules/web/themes/material-blue/views/account/account.inc:160 #: ../../../modules/web/themes/material-blue/views/account/account.inc:167 @@ -4802,10 +4911,6 @@ msgstr "Drop files here (max. 5) or click to select" msgid "Tamaño máximo de archivo: %d MB" msgstr "Maximum file size: %d MB" -#: ../../../modules/web/themes/material-blue/views/account/search-index.inc:11 -msgid "No se encontraron registros" -msgstr "No records found" - #: ../../../modules/web/themes/material-blue/views/account/search-rows.inc:24 msgid "Buscar en Wiki" msgstr "Search in Wiki" @@ -5495,8 +5600,8 @@ msgstr "Site" #: ../../../modules/web/themes/material-blue/views/config/general-site.inc:28 #: ../../../modules/web/themes/material-blue/views/config/general-site.inc:42 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:82 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:96 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:84 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:98 #: ../../../modules/web/themes/material-blue/views/install/index.inc:134 #: ../../../modules/web/themes/material-blue/views/install/index.inc:136 #: ../../../modules/web/themes/material-blue/views/usersettings/general.inc:16 @@ -5712,51 +5817,51 @@ msgstr "CSV delimiter" msgid "Sólo es necesario para archivos CSV." msgstr "It's only needed for CSV files." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:3 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:5 msgid "Información de la Aplicación" msgstr "Application Information" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:9 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:12 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:11 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:14 msgid "Versión sysPass" msgstr "sysPass version" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:19 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:22 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:21 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:24 msgid "Base de Datos" msgstr "Database" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:33 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:36 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:35 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:38 msgid "PHP" msgstr "PHP" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:40 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:42 msgid "Extensiones" msgstr "Extensions" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:44 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:46 msgid "Extensiones no disponibles" msgstr "Unavailable extensions" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:48 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:50 msgid "Memoria Usada" msgstr "Used Memory" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:53 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:55 msgid "OP Cache" msgstr "OP Cache" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:72 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:75 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:74 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:77 msgid "Copia de Configuración" msgstr "Configuration Backup" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:87 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:89 msgid "Indica si el idioma se encuentra disponible" msgstr "Tells whether the language is available or not." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:91 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:93 msgid "" "Si no está instalado, es necesario instalar las locales en el sistema " "operativo. Más información en Wiki." @@ -5764,17 +5869,17 @@ msgstr "" "If it is not installed, you would need install the right operating system " "locales. More info at Wiki." -#: ../../../modules/web/themes/material-blue/views/config/info.inc:103 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:113 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:105 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:115 msgid "Sesión Encriptada" msgstr "Encrypted Session" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:108 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:110 msgid "Indica si los datos de la sesión están encriptados en el servidor" msgstr "Tells whether the session data are encrypted in the server or not" -#: ../../../modules/web/themes/material-blue/views/config/info.inc:120 -#: ../../../modules/web/themes/material-blue/views/config/info.inc:123 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:122 +#: ../../../modules/web/themes/material-blue/views/config/info.inc:125 msgid "Plugins Cargados" msgstr "Loaded Plugins" @@ -6959,6 +7064,52 @@ msgstr "Text" msgid "Link" msgstr "Link" +#~ msgid "El archivo de estructura de la BBDD no existe" +#~ msgstr "The database structure file does not exist" + +#~ msgid "No es posible crear la BBDD de la aplicación. Descárguela de nuevo." +#~ msgstr "" +#~ "Unable to create the application database. Please download it again." + +#~ msgid "No es necesario actualizar la Base de Datos." +#~ msgstr "Database update not needed." + +#~ msgid "Error al leer datos del archivo (%s)" +#~ msgstr "Error while reading file data (%s)" + +#~ msgid "Error al eliminar el archivo (%s)" +#~ msgstr "Error while deleting the file (%s)" + +#~ msgid "No es posible leer/escribir el archivo (%s)" +#~ msgstr "Unable to read/write the file (%s)" + +#~ msgid "Error al escribir datos en el archivo (%s)" +#~ msgstr "Error while writing data to file (%s)" + +#~ msgid "Extensión '%s' no cargada" +#~ msgstr "Extension '%s' not loaded" + +#~ msgid "Respuesta" +#~ msgstr "Response" + +#~ msgid "Versión de PHP requerida >= " +#~ msgstr "Required PHP version >=" + +#~ msgid "La version de PHP es vulnerable al ataque NULL Byte (CVE-2006-7243)" +#~ msgstr "This PHP version is vulnerable to NULL Byte attack CVE-2006-7243)" + +#~ msgid "Actualice la versión de PHP para usar sysPass de forma segura" +#~ msgstr "Please update PHP version to run sysPass in a secure way" + +#~ msgid "No se encuentra el generador de números aleatorios." +#~ msgstr "Cannot find random number generator." + +#~ msgid "" +#~ "Sin esta función un atacante puede utilizar su cuenta al resetear la clave" +#~ msgstr "" +#~ "Without this function, an attacker could take your account on password " +#~ "reset." + #~ msgid "Origen" #~ msgstr "Source" @@ -7236,9 +7387,6 @@ msgstr "Link" #~ msgid "CC" #~ msgstr "CC" -#~ msgid "Error al eliminar archivos asociados a la cuenta" -#~ msgstr "Error while deleting the account's files" - #~ msgid "Migrar Perfiles" #~ msgstr "Migrate Profiles" diff --git a/app/modules/api/Controllers/AccountController.php b/app/modules/api/Controllers/AccountController.php index 26f59d96..aa04d131 100644 --- a/app/modules/api/Controllers/AccountController.php +++ b/app/modules/api/Controllers/AccountController.php @@ -64,10 +64,11 @@ final class AccountController extends ControllerBase new Event($this, EventMessage::factory() ->addDescription(__u('Cuenta visualizada')) ->addDetail(__u('Cuenta'), $accountDetails->getName()) - ->addDetail(__u('Cliente'), $accountDetails->getClientName())) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) ); - $this->returnResponse(new ApiResponse($accountDetails)); + $this->returnResponse(ApiResponse::makeSuccess($accountDetails, $accountId)); } catch (\Exception $e) { $this->returnResponseException($e); @@ -95,10 +96,45 @@ final class AccountController extends ControllerBase new Event($this, EventMessage::factory() ->addDescription(__u('Clave visualizada')) ->addDetail(__u('Cuenta'), $accountDetails->getName()) - ->addDetail(__u('Cliente'), $accountDetails->getClientName())) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) ); - $this->returnResponse(new ApiResponse(["itemId" => $accountId, "password" => $password])); + $this->returnResponse(ApiResponse::makeSuccess(["password" => $password], $accountId)); + } catch (\Exception $e) { + processException($e); + + $this->returnResponseException($e); + } + } + + /** + * viewPassAction + */ + public function editPassAction() + { + try { + $this->setupApi(ActionsInterface::ACCOUNT_EDIT_PASS); + + $accountRequest = new AccountRequest(); + $accountRequest->id = $this->apiService->getParamInt('id', true); + $accountRequest->pass = $this->apiService->getParamString('pass', true); + $accountRequest->passDateChange = $this->apiService->getParamString('expireDate'); + $accountRequest->userEditId = $this->context->getUserData()->getId(); + + $this->accountService->editPassword($accountRequest); + + $accountDetails = $this->accountService->getById($accountRequest->id)->getAccountVData(); + + $this->eventDispatcher->notifyEvent('edit.account.pass', + new Event($this, EventMessage::factory() + ->addDescription(__u('Clave actualizada')) + ->addDetail(__u('Cuenta'), $accountDetails->getName()) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) + ); + + $this->returnResponse(ApiResponse::makeSuccess($accountDetails, $accountRequest->id, __('Clave actualizada'))); } catch (\Exception $e) { processException($e); @@ -127,6 +163,7 @@ final class AccountController extends ControllerBase $accountRequest->parentId = $this->apiService->getParamInt('parentId'); $accountRequest->userId = $this->context->getUserData()->getId(); $accountRequest->userGroupId = $this->context->getUserData()->getUserGroupId(); + $accountRequest->tags = array_map('intval', $this->apiService->getParamArray('tagsId', false, [])); $pass = $this->accountService->getPasswordEncrypted($this->apiService->getParamRaw('pass', true), $this->apiService->getMasterPass()); $accountRequest->pass = $pass['pass']; @@ -140,10 +177,60 @@ final class AccountController extends ControllerBase new Event($this, EventMessage::factory() ->addDescription(__u('Cuenta creada')) ->addDetail(__u('Cuenta'), $accountDetails->getName()) - ->addDetail(__u('Cliente'), $accountDetails->getClientName())) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) ); - $this->returnResponse(new ApiResponse(__('Cuenta creada'), ApiResponse::RESULT_SUCCESS, $accountId)); + $this->returnResponse(ApiResponse::makeSuccess($accountDetails, $accountId, __('Cuenta creada'))); + } catch (\Exception $e) { + processException($e); + + $this->returnResponseException($e); + } + } + + /** + * editAction + */ + public function editAction() + { + try { + $this->setupApi(ActionsInterface::ACCOUNT_EDIT); + + $accountRequest = new AccountRequest(); + $accountRequest->id = $this->apiService->getParamInt('id', true); + $accountRequest->name = $this->apiService->getParamString('name', true); + $accountRequest->clientId = $this->apiService->getParamInt('clientId', true); + $accountRequest->categoryId = $this->apiService->getParamInt('categoryId', true); + $accountRequest->login = $this->apiService->getParamString('login'); + $accountRequest->url = $this->apiService->getParamString('url'); + $accountRequest->notes = $this->apiService->getParamString('notes'); + $accountRequest->isPrivate = $this->apiService->getParamInt('private'); + $accountRequest->isPrivateGroup = $this->apiService->getParamInt('privateGroup'); + $accountRequest->passDateChange = $this->apiService->getParamInt('expireDate'); + $accountRequest->parentId = $this->apiService->getParamInt('parentId'); + $accountRequest->userEditId = $this->context->getUserData()->getId(); + + $tagsId = array_map('intval', $this->apiService->getParamArray('tagsId', false, [])); + + if (!empty($tagsId)) { + $accountRequest->updateTags = true; + $accountRequest->tags = $tagsId; + } + + $this->accountService->update($accountRequest); + + $accountDetails = $this->accountService->getById($accountRequest->id)->getAccountVData(); + + $this->eventDispatcher->notifyEvent('edit.account', + new Event($this, EventMessage::factory() + ->addDescription(__u('Cuenta actualizada')) + ->addDetail(__u('Cuenta'), $accountDetails->getName()) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) + ); + + $this->returnResponse(ApiResponse::makeSuccess($accountDetails, $accountRequest->id, __('Cuenta actualizada'))); } catch (\Exception $e) { processException($e); @@ -164,7 +251,7 @@ final class AccountController extends ControllerBase $accountSearchFilter->setCategoryId($this->apiService->getParamInt('categoryId')); $accountSearchFilter->setClientId($this->apiService->getParamInt('clientId')); - $tagsId = $this->apiService->getParamArray('tagsId', false, []); + $tagsId = array_map('intval', $this->apiService->getParamArray('tagsId', false, [])); if (!empty($tagsId)) { $accountSearchFilter->setTagsId($tagsId); @@ -186,7 +273,7 @@ final class AccountController extends ControllerBase $accountSearchFilter->setLimitCount($this->apiService->getParamInt('count', false, 50)); $accountSearchFilter->setSortOrder($this->apiService->getParamInt('order', false, AccountSearchFilter::SORT_DEFAULT)); - $this->returnResponse(new ApiResponse($this->accountService->getByFilter($accountSearchFilter))); + $this->returnResponse(ApiResponse::makeSuccess($this->accountService->getByFilter($accountSearchFilter))); } catch (\Exception $e) { processException($e); @@ -212,10 +299,11 @@ final class AccountController extends ControllerBase new Event($this, EventMessage::factory() ->addDescription(__u('Cuenta eliminada')) ->addDetail(__u('Cuenta'), $accountDetails->getName()) - ->addDetail(__u('Cliente'), $accountDetails->getClientName())) + ->addDetail(__u('Cliente'), $accountDetails->getClientName()) + ->addDetail(__u('ID'), $accountDetails->getId())) ); - $this->returnResponse(new ApiResponse(__('Cuenta eliminada'), ApiResponse::RESULT_SUCCESS, $accountId)); + $this->returnResponse(ApiResponse::makeSuccess($accountDetails, $accountId, __('Cuenta eliminada'))); } catch (\Exception $e) { processException($e); diff --git a/app/modules/api/Controllers/CategoryController.php b/app/modules/api/Controllers/CategoryController.php index fd5902a5..c2bb20c4 100644 --- a/app/modules/api/Controllers/CategoryController.php +++ b/app/modules/api/Controllers/CategoryController.php @@ -58,10 +58,12 @@ final class CategoryController extends ControllerBase $categoryData = $this->categoryService->getById($id); $this->eventDispatcher->notifyEvent('show.category', - new Event($this) + new Event($this, EventMessage::factory() + ->addDescription(__u('Categoría visualizada')) + ->addDetail(__u('Categoría'), $categoryData->getName())) ); - $this->returnResponse(new ApiResponse($categoryData)); + $this->returnResponse(ApiResponse::makeSuccess($categoryData, $id)); } catch (\Exception $e) { processException($e); @@ -81,15 +83,16 @@ final class CategoryController extends ControllerBase $categoryData->setName($this->apiService->getParamString('name', true)); $categoryData->setDescription($this->apiService->getParamString('description')); - $id = $this->categoryService->create($categoryData); + $categoryId = $this->categoryService->create($categoryData); $this->eventDispatcher->notifyEvent('create.category', new Event($this, EventMessage::factory() ->addDescription(__u('Categoría creada')) - ->addDetail(__u('Categoría'), $categoryData->getName())) + ->addDetail(__u('Categoría'), $categoryData->getName()) + ->addDetail(__u('ID'), $categoryId)) ); - $this->returnResponse(new ApiResponse(__('Categoría creada'), ApiResponse::RESULT_SUCCESS, $id)); + $this->returnResponse(ApiResponse::makeSuccess($categoryData, $categoryId, __('Categoría creada'))); } catch (\Exception $e) { processException($e); @@ -115,10 +118,11 @@ final class CategoryController extends ControllerBase $this->eventDispatcher->notifyEvent('edit.category', new Event($this, EventMessage::factory() ->addDescription(__u('Categoría actualizada')) - ->addDetail(__u('Categoría'), $categoryData->getName())) + ->addDetail(__u('Categoría'), $categoryData->getName()) + ->addDetail(__u('ID'), $categoryData->getId())) ); - $this->returnResponse(new ApiResponse(__('Categoría actualizada'), ApiResponse::RESULT_SUCCESS, $categoryData->getId())); + $this->returnResponse(ApiResponse::makeSuccess($categoryData, $categoryData->getId(), __('Categoría actualizada'))); } catch (\Exception $e) { processException($e); @@ -143,10 +147,11 @@ final class CategoryController extends ControllerBase $this->eventDispatcher->notifyEvent('edit.category', new Event($this, EventMessage::factory() ->addDescription(__u('Categoría eliminada')) - ->addDetail(__u('Categoría'), $categoryData->getName())) + ->addDetail(__u('Categoría'), $categoryData->getName()) + ->addDetail(__u('ID'), $categoryData->getId())) ); - $this->returnResponse(new ApiResponse(__('Categoría eliminada'), ApiResponse::RESULT_SUCCESS, $id)); + $this->returnResponse(ApiResponse::makeSuccess($categoryData, $id, __('Categoría eliminada'))); } catch (\Exception $e) { processException($e); @@ -168,7 +173,7 @@ final class CategoryController extends ControllerBase $this->eventDispatcher->notifyEvent('search.category', new Event($this)); - $this->returnResponse(new ApiResponse($this->categoryService->search($itemSearchData)->getDataAsArray())); + $this->returnResponse(ApiResponse::makeSuccess($this->categoryService->search($itemSearchData)->getDataAsArray())); } catch (\Exception $e) { processException($e); diff --git a/app/modules/api/Controllers/ClientController.php b/app/modules/api/Controllers/ClientController.php index 46291847..1917a085 100644 --- a/app/modules/api/Controllers/ClientController.php +++ b/app/modules/api/Controllers/ClientController.php @@ -54,11 +54,18 @@ final class ClientController extends ControllerBase $this->setupApi(ActionsInterface::CLIENT_VIEW); $id = $this->apiService->getParamInt('id', true); - $client = $this->clientService->getById($id); + $clientData = $this->clientService->getById($id); $this->eventDispatcher->notifyEvent('show.client', new Event($this)); - $this->returnResponse(new ApiResponse($client)); + $this->eventDispatcher->notifyEvent('show.client', + new Event($this, EventMessage::factory() + ->addDescription(__u('Cliente visualizado')) + ->addDetail(__u('Cliente'), $clientData->getName()) + ->addDetail(__u('ID'), $id)) + ); + + $this->returnResponse(ApiResponse::makeSuccess($clientData, $id)); } catch (\Exception $e) { processException($e); @@ -84,10 +91,11 @@ final class ClientController extends ControllerBase $this->eventDispatcher->notifyEvent('create.client', new Event($this, EventMessage::factory() ->addDescription(__u('Cliente creado')) - ->addDetail(__u('Cliente'), $clientData->getName())) + ->addDetail(__u('Cliente'), $clientData->getName()) + ->addDetail(__u('ID'), $clientId)) ); - $this->returnResponse(new ApiResponse(__('Cliente creado'), ApiResponse::RESULT_SUCCESS, $clientId)); + $this->returnResponse(ApiResponse::makeSuccess($clientData, $clientId, __('Cliente creado'))); } catch (\Exception $e) { processException($e); @@ -114,10 +122,11 @@ final class ClientController extends ControllerBase $this->eventDispatcher->notifyEvent('edit.client', new Event($this, EventMessage::factory() ->addDescription(__u('Cliente actualizado')) - ->addDetail(__u('Cliente'), $clientData->getName())) + ->addDetail(__u('Cliente'), $clientData->getName()) + ->addDetail(__u('ID'), $clientData->getId())) ); - $this->returnResponse(new ApiResponse(__('Cliente actualizado'), ApiResponse::RESULT_SUCCESS, $clientData->getId())); + $this->returnResponse(ApiResponse::makeSuccess($clientData, $clientData->getId(), __('Cliente actualizado'))); } catch (\Exception $e) { processException($e); @@ -142,10 +151,11 @@ final class ClientController extends ControllerBase $this->eventDispatcher->notifyEvent('edit.client', new Event($this, EventMessage::factory() ->addDescription(__u('Cliente eliminado')) - ->addDetail(__u('Cliente'), $clientData->getName())) + ->addDetail(__u('Cliente'), $clientData->getName()) + ->addDetail(__u('ID'), $id)) ); - $this->returnResponse(new ApiResponse(__('Cliente eliminado'), ApiResponse::RESULT_SUCCESS, $id)); + $this->returnResponse(ApiResponse::makeSuccess($clientData, $id, __('Cliente eliminado'))); } catch (\Exception $e) { $this->returnResponseException($e); @@ -167,7 +177,7 @@ final class ClientController extends ControllerBase $this->eventDispatcher->notifyEvent('search.client', new Event($this)); - $this->returnResponse(new ApiResponse($this->clientService->search($itemSearchData)->getDataAsArray())); + $this->returnResponse(ApiResponse::makeSuccess($this->clientService->search($itemSearchData)->getDataAsArray())); } catch (\Exception $e) { processException($e); diff --git a/app/modules/api/Controllers/ConfigController.php b/app/modules/api/Controllers/ConfigController.php index 42fccbe0..5a8d4317 100644 --- a/app/modules/api/Controllers/ConfigController.php +++ b/app/modules/api/Controllers/ConfigController.php @@ -58,7 +58,7 @@ final class ConfigController extends ControllerBase ->addDetail(__u('Ruta'), $path)) ); - $this->returnResponse(new ApiResponse(__('Proceso de backup finalizado'))); + $this->returnResponse(ApiResponse::makeSuccess($path, null, __('Proceso de backup finalizado'))); } catch (\Exception $e) { processException($e); @@ -91,7 +91,7 @@ final class ConfigController extends ControllerBase ->addDescription(__u('Proceso de exportación finalizado'))) ); - $this->returnResponse(new ApiResponse(__('Proceso de exportación finalizado'))); + $this->returnResponse(ApiResponse::makeSuccess($path, null, __('Proceso de exportación finalizado'))); } catch (\Exception $e) { processException($e); diff --git a/app/modules/api/Controllers/Help/AccountHelp.php b/app/modules/api/Controllers/Help/AccountHelp.php index 2a3d5c4d..a66eb41d 100644 --- a/app/modules/api/Controllers/Help/AccountHelp.php +++ b/app/modules/api/Controllers/Help/AccountHelp.php @@ -57,6 +57,20 @@ class AccountHelp implements HelpInterface ]; } + /** + * @return array + */ + public static function editPass() + { + return + [ + self::getItem('id', __('Id de la cuenta'), true), + self::getItem('tokenPass', __('Clave del token'), true), + self::getItem('pass', __('Clave'), true), + self::getItem('expireDate', __('Fecha Caducidad Clave')) + ]; + } + /** * @return array */ @@ -65,7 +79,7 @@ class AccountHelp implements HelpInterface return [ self::getItem('tokenPass', __('Clave del token'), true), - self::getItem('name', __('Nombre de cuenta', true)), + self::getItem('name', __('Nombre de cuenta'), true), self::getItem('categoryId', __('Id de categoría'), true), self::getItem('clientId', __('Id de cliente'), true), self::getItem('pass', __('Clave'), true), @@ -75,7 +89,30 @@ class AccountHelp implements HelpInterface self::getItem('private', __('Cuenta Privada')), self::getItem('privateGroup', __('Cuenta Privada Grupo')), self::getItem('expireDate', __('Fecha Caducidad Clave')), - self::getItem('parentId', __('Cuenta Vinculada')) + self::getItem('parentId', __('Cuenta Vinculada')), + self::getItem('tagsId', __('Array con Ids de etiquetas')) + ]; + } + + /** + * @return array + */ + public static function edit() + { + return + [ + self::getItem('id', __('Id de la cuenta'), true), + self::getItem('name', __('Nombre de cuenta')), + self::getItem('categoryId', __('Id de categoría')), + self::getItem('clientId', __('Id de cliente')), + self::getItem('login', __('Usuario de acceso')), + self::getItem('url', __('URL o IP de acceso')), + self::getItem('notes', __('Notas sobre la cuenta')), + self::getItem('private', __('Cuenta Privada')), + self::getItem('privateGroup', __('Cuenta Privada Grupo')), + self::getItem('expireDate', __('Fecha Caducidad Clave')), + self::getItem('parentId', __('Cuenta Vinculada')), + self::getItem('tagsId', __('Array con Ids de etiquetas')) ]; } @@ -90,7 +127,7 @@ class AccountHelp implements HelpInterface self::getItem('count', __('Número de resultados a mostrar')), self::getItem('categoryId', __('Id de categoría a filtrar')), self::getItem('clientId', __('Id de cliente a filtrar')), - self::getItem('tagsId', __('Array de Ids de etiquetas a filtrar')), + self::getItem('tagsId', __('Array con Ids de etiquetas a filtrar')), self::getItem('op', __('Operador de filtrado')) ]; } diff --git a/app/modules/api/Controllers/TagController.php b/app/modules/api/Controllers/TagController.php index dc2cc542..8466740d 100644 --- a/app/modules/api/Controllers/TagController.php +++ b/app/modules/api/Controllers/TagController.php @@ -54,10 +54,15 @@ final class TagController extends ControllerBase $this->setupApi(ActionsInterface::TAG_VIEW); $id = $this->apiService->getParamInt('id', true); + $tagData = $this->tagService->getById($id); - $this->eventDispatcher->notifyEvent('show.tag', new Event($this)); + $this->eventDispatcher->notifyEvent('show.tag', + new Event($this, EventMessage::factory() + ->addDescription(__u('Etiqueta visualizada')) + ->addDetail(__u('Etiqueta'), $tagData->getName())) + ); - $this->returnResponse(new ApiResponse($this->tagService->getById($id))); + $this->returnResponse(ApiResponse::makeSuccess($tagData, $id)); } catch (\Exception $e) { processException($e); @@ -76,7 +81,7 @@ final class TagController extends ControllerBase $tagData = new TagData(); $tagData->setName($this->apiService->getParamString('name', true)); - $id = $this->tagService->create($tagData); + $tagId = $this->tagService->create($tagData); $this->eventDispatcher->notifyEvent('create.tag', new Event($this, EventMessage::factory() @@ -84,7 +89,7 @@ final class TagController extends ControllerBase ->addDetail(__u('Etiqueta'), $tagData->getName())) ); - $this->returnResponse(new ApiResponse(__('Etiqueta creada'), ApiResponse::RESULT_SUCCESS, $id)); + $this->returnResponse(ApiResponse::makeSuccess($tagData, $tagId, __('Etiqueta creada'))); } catch (\Exception $e) { processException($e); @@ -109,10 +114,11 @@ final class TagController extends ControllerBase $this->eventDispatcher->notifyEvent('edit.tag', new Event($this, EventMessage::factory() ->addDescription(__u('Etiqueta actualizada')) - ->addDetail(__u('Etiqueta'), $tagData->getName())) + ->addDetail(__u('Etiqueta'), $tagData->getName()) + ->addDetail(__u('ID'), $tagData->getId())) ); - $this->returnResponse(new ApiResponse(__('Etiqueta actualizada'), ApiResponse::RESULT_SUCCESS, $tagData->getId())); + $this->returnResponse(ApiResponse::makeSuccess($tagData, $tagData->getId(), __('Etiqueta actualizada'))); } catch (\Exception $e) { processException($e); @@ -140,7 +146,7 @@ final class TagController extends ControllerBase ->addDetail(__u('Etiqueta'), $tagData->getName())) ); - $this->returnResponse(new ApiResponse(__('Etiqueta eliminada'), ApiResponse::RESULT_SUCCESS, $id)); + $this->returnResponse(ApiResponse::makeSuccess($tagData, $id, __('Etiqueta eliminada'))); } catch (\Exception $e) { processException($e); @@ -162,7 +168,7 @@ final class TagController extends ControllerBase $this->eventDispatcher->notifyEvent('search.tag', new Event($this)); - $this->returnResponse(new ApiResponse($this->tagService->search($itemSearchData)->getDataAsArray())); + $this->returnResponse(ApiResponse::makeSuccess($this->tagService->search($itemSearchData)->getDataAsArray())); } catch (\Exception $e) { processException($e); diff --git a/app/modules/web/Controllers/AccountFileController.php b/app/modules/web/Controllers/AccountFileController.php index 3bb81c3e..1ca164b6 100644 --- a/app/modules/web/Controllers/AccountFileController.php +++ b/app/modules/web/Controllers/AccountFileController.php @@ -111,6 +111,8 @@ final class AccountFileController extends ControllerBase implements CrudControll * Download action * * @param $id + * + * @return string */ public function downloadAction($id) { @@ -134,10 +136,12 @@ final class AccountFileController extends ControllerBase implements CrudControll ->addDetail(__u('Archivo'), $fileData->getName())) ); - exit($fileData->getContent()); + return $fileData->getContent(); } catch (\Exception $e) { processException($e); } + + return ''; } /** @@ -361,7 +365,8 @@ final class AccountFileController extends ControllerBase implements CrudControll public function listAction($accountId) { if (!$this->configData->isFilesEnabled()) { - die(__('Gestión de archivos deshabilitada')); + echo __('Gestión de archivos deshabilitada'); + return; } try { @@ -375,6 +380,12 @@ final class AccountFileController extends ControllerBase implements CrudControll $this->view->assign('fileDeleteRoute', Acl::getActionRoute(Acl::ACCOUNT_FILE_DELETE)); if (!is_array($this->view->files) || count($this->view->files) === 0) { + $this->view->addTemplate('no_records_found', '_partials'); + + $this->view->assign('message', __('No hay archivos asociados a la cuenta')); + + $this->view(); + return; } diff --git a/app/modules/web/Forms/AuthTokenForm.php b/app/modules/web/Forms/AuthTokenForm.php index da48e2a8..58421ebd 100644 --- a/app/modules/web/Forms/AuthTokenForm.php +++ b/app/modules/web/Forms/AuthTokenForm.php @@ -27,6 +27,7 @@ namespace SP\Modules\Web\Forms; use SP\Core\Acl\ActionsInterface; use SP\Core\Exceptions\ValidationException; use SP\DataModel\AuthTokenData; +use SP\Services\AuthToken\AuthTokenService; /** * Class ApiTokenForm @@ -94,11 +95,7 @@ final class AuthTokenForm extends FormBase implements FormInterface throw new ValidationException(__u('Acción no indicada')); } - $action = $this->authTokenData->getActionId(); - - if (($action === ActionsInterface::ACCOUNT_VIEW_PASS - || $action === ActionsInterface::ACCOUNT_CREATE - || $this->isRefresh()) + if ((AuthTokenService::isSecuredAction($this->authTokenData->getActionId()) || $this->isRefresh()) && $this->authTokenData->getHash() === '' ) { throw new ValidationException(__u('La clave no puede estar en blanco')); diff --git a/app/modules/web/themes/material-blue/views/_partials/no_records_found.inc b/app/modules/web/themes/material-blue/views/_partials/no_records_found.inc new file mode 100644 index 00000000..8932eceb --- /dev/null +++ b/app/modules/web/themes/material-blue/views/_partials/no_records_found.inc @@ -0,0 +1,5 @@ + +
+ +
+ \ No newline at end of file diff --git a/lib/SP/Services/Account/AccountService.php b/lib/SP/Services/Account/AccountService.php index 635b5870..663e4ec4 100644 --- a/lib/SP/Services/Account/AccountService.php +++ b/lib/SP/Services/Account/AccountService.php @@ -313,7 +313,7 @@ final class AccountService extends Service implements AccountServiceInterface $accountRequest->changePermissions = AccountAclService::getShowPermission($this->context->getUserData(), $this->context->getUserProfile()); // Cambiar el grupo principal si el usuario es Admin - $accountRequest->changeUserGroup = ($accountRequest->userGroupId !== 0 + $accountRequest->changeUserGroup = ($accountRequest->userGroupId > 0 && ($this->context->getUserData()->getIsAdminApp() || $this->context->getUserData()->getIsAdminAcc())); $this->addHistory($accountRequest->id); diff --git a/lib/SP/Services/Api/ApiResponse.php b/lib/SP/Services/Api/ApiResponse.php index 07d1f92b..fca8d397 100644 --- a/lib/SP/Services/Api/ApiResponse.php +++ b/lib/SP/Services/Api/ApiResponse.php @@ -46,21 +46,54 @@ final class ApiResponse * @var int */ private $itemId; + /** + * @var string + */ + private $resultMessage; /** * ApiResponse constructor. * * @param mixed $result - * @param int $resultCode * @param null $itemId */ - public function __construct($result, $resultCode = self::RESULT_SUCCESS, $itemId = null) + public function __construct($result, $itemId = null) { $this->result = $result; - $this->resultCode = (int)$resultCode; $this->itemId = (int)$itemId; } + /** + * @param mixed $result + * @param int|null $itemId + * @param string|null $message + * + * @return ApiResponse + */ + public static function makeSuccess($result, int $itemId = null, string $message = null) + { + $out = new self($result, $itemId); + $out->resultCode = self::RESULT_SUCCESS; + $out->resultMessage = $message; + + return $out; + } + + /** + * @param mixed $result + * @param string|null $message + * + * @return ApiResponse + */ + public static function makeError($result, string $message = null) + { + $out = new self($result); + $out->resultCode = self::RESULT_ERROR; + $out->resultMessage = $message; + + return $out; + } + /** * @return array */ @@ -70,6 +103,7 @@ final class ApiResponse 'itemId' => $this->itemId, 'result' => $this->result, 'resultCode' => $this->resultCode, + 'resultMessage' => $this->resultMessage, 'count' => is_array($this->result) ? count($this->result) : null ]; } diff --git a/lib/SP/Services/Api/ApiService.php b/lib/SP/Services/Api/ApiService.php index 487491e9..7100d665 100644 --- a/lib/SP/Services/Api/ApiService.php +++ b/lib/SP/Services/Api/ApiService.php @@ -25,7 +25,6 @@ namespace SP\Services\Api; use Defuse\Crypto\Exception\CryptoException; -use SP\Core\Acl\ActionsInterface; use SP\Core\Crypt\Hash; use SP\Core\Crypt\Vault; use SP\Core\Exceptions\InvalidClassException; @@ -109,9 +108,7 @@ final class ApiService extends Service $this->setupUser(); - if ($actionId === ActionsInterface::ACCOUNT_VIEW_PASS - || $actionId === ActionsInterface::ACCOUNT_CREATE - ) { + if (AuthTokenService::isSecuredAction($actionId)) { $this->context->setTrasientKey('_masterpass', $this->getMasterPassFromVault()); } diff --git a/lib/SP/Services/AuthToken/AuthTokenService.php b/lib/SP/Services/AuthToken/AuthTokenService.php index cd1c120e..5cf05c89 100644 --- a/lib/SP/Services/AuthToken/AuthTokenService.php +++ b/lib/SP/Services/AuthToken/AuthTokenService.php @@ -48,6 +48,12 @@ final class AuthTokenService extends Service { use ServiceItemTrait; + const SECURED_ACTIONS = [ + ActionsInterface::ACCOUNT_VIEW_PASS, + ActionsInterface::ACCOUNT_EDIT_PASS, + ActionsInterface::ACCOUNT_CREATE + ]; + /** * @var AuthTokenRepository */ @@ -64,8 +70,10 @@ final class AuthTokenService extends Service ActionsInterface::ACCOUNT_SEARCH => Acl::getActionInfo(ActionsInterface::ACCOUNT_SEARCH), ActionsInterface::ACCOUNT_VIEW => Acl::getActionInfo(ActionsInterface::ACCOUNT_VIEW), ActionsInterface::ACCOUNT_VIEW_PASS => Acl::getActionInfo(ActionsInterface::ACCOUNT_VIEW_PASS), + ActionsInterface::ACCOUNT_EDIT_PASS => Acl::getActionInfo(ActionsInterface::ACCOUNT_EDIT_PASS), ActionsInterface::ACCOUNT_DELETE => Acl::getActionInfo(ActionsInterface::ACCOUNT_DELETE), ActionsInterface::ACCOUNT_CREATE => Acl::getActionInfo(ActionsInterface::ACCOUNT_CREATE), + ActionsInterface::ACCOUNT_EDIT => Acl::getActionInfo(ActionsInterface::ACCOUNT_EDIT), ActionsInterface::CATEGORY_SEARCH => Acl::getActionInfo(ActionsInterface::CATEGORY_SEARCH), ActionsInterface::CATEGORY_VIEW => Acl::getActionInfo(ActionsInterface::CATEGORY_VIEW), ActionsInterface::CATEGORY_CREATE => Acl::getActionInfo(ActionsInterface::CATEGORY_CREATE), @@ -182,11 +190,7 @@ final class AuthTokenService extends Service $token = $this->authTokenRepository->getTokenByUserId($authTokenData->getUserId()) ?: $this->generateToken(); } - $action = $authTokenData->getActionId(); - - if ($action === ActionsInterface::ACCOUNT_VIEW_PASS - || $action === ActionsInterface::ACCOUNT_CREATE - ) { + if (self::isSecuredAction($authTokenData->getActionId())) { $authTokenData->setVault($this->getSecureData($token, $authTokenData->getHash())); $authTokenData->setHash(Hash::hashKey($authTokenData->getHash())); } else { @@ -210,6 +214,16 @@ final class AuthTokenService extends Service return Util::generateRandomBytes(32); } + /** + * @param int $action + * + * @return bool + */ + public static function isSecuredAction(int $action) + { + return in_array($action, self::SECURED_ACTIONS, true); + } + /** * Generar la llave segura del token * diff --git a/lib/SP/Services/Category/CategoryService.php b/lib/SP/Services/Category/CategoryService.php index 06cf50c3..56c55232 100644 --- a/lib/SP/Services/Category/CategoryService.php +++ b/lib/SP/Services/Category/CategoryService.php @@ -152,7 +152,7 @@ final class CategoryService extends Service /** * @param $itemData * - * @return mixed + * @return int * @throws SPException * @throws \SP\Core\Exceptions\ConstraintException * @throws \SP\Core\Exceptions\QueryException diff --git a/lib/SP/Services/Install/Installer.php b/lib/SP/Services/Install/Installer.php index 39751105..bd209812 100644 --- a/lib/SP/Services/Install/Installer.php +++ b/lib/SP/Services/Install/Installer.php @@ -57,7 +57,7 @@ final class Installer extends Service */ const VERSION = [3, 0, 0]; const VERSION_TEXT = '3.0-beta'; - const BUILD = 18082701; + const BUILD = 18082801; /** * @var DatabaseSetupInterface diff --git a/tests/SP/Modules/Api/Controllers/AccountControllerTest.php b/tests/SP/Modules/Api/Controllers/AccountControllerTest.php index 78926e6c..b65265d1 100644 --- a/tests/SP/Modules/Api/Controllers/AccountControllerTest.php +++ b/tests/SP/Modules/Api/Controllers/AccountControllerTest.php @@ -64,7 +64,9 @@ class AccountControllerTest extends WebTestCase $this->assertInstanceOf(\stdClass::class, $result); $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result); $this->assertEquals(3, $result->result->itemId); + $this->assertEquals('Account added', $result->result->resultMessage); return $result->result->itemId; } @@ -91,12 +93,62 @@ class AccountControllerTest extends WebTestCase $this->assertInstanceOf(\stdClass::class, $result); $this->assertEquals(0, $result->result->resultCode); - $this->assertEquals(2, $result->result->count); + $this->assertEquals(1, $result->result->count); $this->assertInstanceOf(\stdClass::class, $result->result->result); - $this->assertEquals($id, $result->result->result->itemId); + $this->assertEquals($id, $result->result->itemId); $this->assertEquals('password_test', $result->result->result->password); } + /** + * @depends testCreateAction + * + * @param int $id + */ + public function testEditPassAction($id) + { + $data = [ + 'jsonrpc' => '2.0', + 'method' => 'account/editPass', + 'params' => [ + 'authToken' => ApiTest::API_TOKEN, + 'tokenPass' => ApiTest::API_PASS, + 'id' => $id, + 'pass' => 'test_123', + 'expireDate' => time() + 86400 + ], + 'id' => 1 + ]; + + $result = self::checkAndProcessJsonResponse(self::postJson(ApiTest::API_URL, $data)); + + $this->assertInstanceOf(\stdClass::class, $result); + $this->assertEquals(0, $result->result->resultCode); + $this->assertNull($result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result->result); + $this->assertEquals('Password updated', $result->result->resultMessage); + $this->assertEquals($id, $result->result->itemId); + + $data = [ + 'jsonrpc' => '2.0', + 'method' => 'account/viewPass', + 'params' => [ + 'authToken' => ApiTest::API_TOKEN, + 'tokenPass' => ApiTest::API_PASS, + 'id' => $id, + ], + 'id' => 1 + ]; + + $result = self::checkAndProcessJsonResponse(self::postJson(ApiTest::API_URL, $data)); + + $this->assertInstanceOf(\stdClass::class, $result); + $this->assertEquals(0, $result->result->resultCode); + $this->assertEquals(1, $result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result->result); + $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('test_123', $result->result->result->password); + } + /** * @depends testCreateAction * @@ -118,7 +170,9 @@ class AccountControllerTest extends WebTestCase $this->assertInstanceOf(\stdClass::class, $result); $this->assertEquals(0, $result->result->resultCode); + $this->assertEquals($id, $result->result->itemId); $this->assertNull($result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result->result); $this->assertEquals($id, $result->result->result->id); $this->assertEquals(1, $result->result->result->userId); @@ -132,9 +186,9 @@ class AccountControllerTest extends WebTestCase $this->assertEmpty($result->result->result->pass); $this->assertEmpty($result->result->result->key); $this->assertEquals("test\n\ntest", $result->result->result->notes); - $this->assertNull($result->result->result->dateEdit); + $this->assertNotNull($result->result->result->dateEdit); $this->assertEquals(0, $result->result->result->countView); - $this->assertEquals(1, $result->result->result->countDecrypt); + $this->assertEquals(2, $result->result->result->countDecrypt); $this->assertEquals(0, $result->result->result->isPrivate); $this->assertEquals(0, $result->result->result->isPrivateGroup); $this->assertGreaterThan(0, $result->result->result->passDate); @@ -488,6 +542,79 @@ class AccountControllerTest extends WebTestCase $this->assertCount(2, $result->result->result); } + /** + * @depends testCreateAction + * + * @param int $id + */ + public function testEditAction($id) + { + $data = [ + 'jsonrpc' => '2.0', + 'method' => 'account/edit', + 'params' => [ + 'authToken' => ApiTest::API_TOKEN, + 'id' => $id, + 'name' => 'API test edit', + 'categoryId' => 3, + 'clientId' => 1, + 'login' => 'admin', + 'expireDate' => time() + 86400, + 'url' => 'http://demo.syspass.org', + 'notes' => "test\n\ntest\nedit", + 'isPrivate' => 0, + 'isPrivateGroup' => 0, + ], + 'id' => 1 + ]; + + $result = self::checkAndProcessJsonResponse(self::postJson(ApiTest::API_URL, $data)); + + $this->assertInstanceOf(\stdClass::class, $result); + $this->assertEquals(0, $result->result->resultCode); + $this->assertNull($result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result); + $this->assertEquals(3, $result->result->itemId); + $this->assertEquals('Account updated', $result->result->resultMessage); + + $data = [ + 'jsonrpc' => '2.0', + 'method' => 'account/view', + 'params' => [ + 'authToken' => ApiTest::API_TOKEN, + 'id' => $id, + ], + 'id' => 1 + ]; + + $result = self::checkAndProcessJsonResponse(self::postJson(ApiTest::API_URL, $data)); + + $this->assertInstanceOf(\stdClass::class, $result); + $this->assertEquals(0, $result->result->resultCode); + $this->assertEquals($id, $result->result->itemId); + $this->assertNull($result->result->count); + + $this->assertInstanceOf(\stdClass::class, $result->result->result); + $this->assertEquals($id, $result->result->result->id); + $this->assertEquals(1, $result->result->result->userId); + $this->assertEquals(1, $result->result->result->userGroupId); + $this->assertEquals(1, $result->result->result->userEditId); + $this->assertEquals('API test edit', $result->result->result->name); + $this->assertEquals(1, $result->result->result->clientId); + $this->assertEquals(3, $result->result->result->categoryId); + $this->assertEquals('admin', $result->result->result->login); + $this->assertEquals('http://demo.syspass.org', $result->result->result->url); + $this->assertEmpty($result->result->result->pass); + $this->assertEmpty($result->result->result->key); + $this->assertEquals("test\n\ntest\nedit", $result->result->result->notes); + $this->assertNotNull($result->result->result->dateEdit); + $this->assertEquals(0, $result->result->result->isPrivate); + $this->assertEquals(0, $result->result->result->isPrivateGroup); + $this->assertGreaterThan(0, $result->result->result->passDate); + $this->assertGreaterThan(0, $result->result->result->passDateChange); + $this->assertEquals(0, $result->result->result->parentId); + } + /** * @depends testCreateAction * @@ -509,7 +636,9 @@ class AccountControllerTest extends WebTestCase $this->assertInstanceOf(\stdClass::class, $result); $this->assertEquals(0, $result->result->resultCode); - $this->assertNull($result->result->count); + $this->assertInstanceOf(\stdClass::class, $result->result); + $this->assertEquals('Account removed', $result->result->resultMessage); $this->assertEquals($id, $result->result->itemId); + $this->assertNull($result->result->count); } } diff --git a/tests/SP/Modules/Api/Controllers/CategoryControllerTest.php b/tests/SP/Modules/Api/Controllers/CategoryControllerTest.php index 1945eeb1..99106dcb 100644 --- a/tests/SP/Modules/Api/Controllers/CategoryControllerTest.php +++ b/tests/SP/Modules/Api/Controllers/CategoryControllerTest.php @@ -56,6 +56,8 @@ class CategoryControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals(5, $result->result->itemId); + $this->assertEquals('Category added', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); return $result->result->itemId; } @@ -112,6 +114,8 @@ class CategoryControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Category updated', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } public function testSearchAction() @@ -195,5 +199,7 @@ class CategoryControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Category deleted', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } } diff --git a/tests/SP/Modules/Api/Controllers/ClientControllerTest.php b/tests/SP/Modules/Api/Controllers/ClientControllerTest.php index e253af2c..235763c8 100644 --- a/tests/SP/Modules/Api/Controllers/ClientControllerTest.php +++ b/tests/SP/Modules/Api/Controllers/ClientControllerTest.php @@ -57,6 +57,8 @@ class ClientControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals(4, $result->result->itemId); + $this->assertEquals('Client added', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); return $result->result->itemId; } @@ -115,6 +117,8 @@ class ClientControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Client updated', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } public function testSearchAction() @@ -199,5 +203,7 @@ class ClientControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Client deleted', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } } diff --git a/tests/SP/Modules/Api/Controllers/ConfigControllerTest.php b/tests/SP/Modules/Api/Controllers/ConfigControllerTest.php index 802032b6..5ec44941 100644 --- a/tests/SP/Modules/Api/Controllers/ConfigControllerTest.php +++ b/tests/SP/Modules/Api/Controllers/ConfigControllerTest.php @@ -50,7 +50,8 @@ class ConfigControllerTest extends WebTestCase $this->assertInstanceOf(\stdClass::class, $result); $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); - $this->assertEquals('Export process finished', $result->result->result); + $this->assertEquals('/var/www/html/sysPass/app/backup', $result->result->result); + $this->assertEquals('Export process finished', $result->result->resultMessage); $this->assertEquals(0, $result->result->resultCode); } @@ -71,7 +72,8 @@ class ConfigControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals(0, $result->result->itemId); - $this->assertEquals('Backup process finished', $result->result->result); + $this->assertEquals('/var/www/html/sysPass/app/backup', $result->result->result); + $this->assertEquals('Backup process finished', $result->result->resultMessage); $this->assertEquals(0, $result->result->resultCode); } } diff --git a/tests/SP/Modules/Api/Controllers/TagControllerTest.php b/tests/SP/Modules/Api/Controllers/TagControllerTest.php index bef85181..dc079c9d 100644 --- a/tests/SP/Modules/Api/Controllers/TagControllerTest.php +++ b/tests/SP/Modules/Api/Controllers/TagControllerTest.php @@ -2,8 +2,8 @@ /** * sysPass * - * @author nuxsmin - * @link https://syspass.org + * @author nuxsmin + * @link https://syspass.org * @copyright 2012-2018, Rubén Domínguez nuxsmin@$syspass.org * * This file is part of sysPass. @@ -56,6 +56,8 @@ class TagControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals(7, $result->result->itemId); + $this->assertEquals('Tag added', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); return $result->result->itemId; } @@ -110,6 +112,8 @@ class TagControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Tag updated', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } public function testSearchAction() @@ -192,5 +196,7 @@ class TagControllerTest extends WebTestCase $this->assertEquals(0, $result->result->resultCode); $this->assertNull($result->result->count); $this->assertEquals($id, $result->result->itemId); + $this->assertEquals('Tag removed', $result->result->resultMessage); + $this->assertInstanceOf(\stdClass::class, $result->result->result); } } diff --git a/tests/res/config/config.xml b/tests/res/config/config.xml index f34b246b..981eb97d 100644 --- a/tests/res/config/config.xml +++ b/tests/res/config/config.xml @@ -9,11 +9,11 @@ 1 1 - 3a965d46f6da8fdf1fe749f137455863bdbe7409 + d184756286fee739c3e89432061c94734f934b0f 0 0 - 1535360745 - e623682d0999b924c0c70e03e8f42f2ff3806fe0 + 1535408508 + 5cef8b4dced8063f0705eff442b84143093b3917 @@ -32,7 +32,7 @@ 0 - f247312233ce03616c1de4d4512e53963cb620ac + 756074783f565ce7cd838e0dbdb1db695f43acf6 PDF JPG