From c3de0a2d4beffaf84325182f6ee222b25c5cd96e Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 22 Oct 2014 19:20:58 -0700 Subject: [PATCH 01/87] Add section on Overlay Icons to 'Using the Synchronization Client' --- doc/images/icon-error.png | Bin 0 -> 5027 bytes doc/images/icon-information.png | Bin 0 -> 4220 bytes doc/images/icon-offline.png | Bin 0 -> 3887 bytes doc/images/icon-paused.png | Bin 0 -> 4852 bytes doc/images/icon-syncing.png | Bin 0 -> 5004 bytes doc/images/icon.png | Bin 1301 -> 4645 bytes doc/navigating.rst | 156 ++++++++++++++++++++------------ 7 files changed, 100 insertions(+), 56 deletions(-) create mode 100644 doc/images/icon-error.png create mode 100644 doc/images/icon-information.png create mode 100644 doc/images/icon-offline.png create mode 100644 doc/images/icon-paused.png create mode 100644 doc/images/icon-syncing.png diff --git a/doc/images/icon-error.png b/doc/images/icon-error.png new file mode 100644 index 0000000000000000000000000000000000000000..6eb5e3e4090ca6e9c1d013debbfc0568082384b7 GIT binary patch literal 5027 zcmV;U6I|?xP)xJhi|jFZ@%PMoCeOsAPCPTT1=jpHoiHgz(PNt(n?>_BK7FGCD9F$6EctY#4i z3A8WoNpJgY_x6wXBm@Ys43d-Y%x~VC_kO>7&-vbS&OPVcpQu^-A*KsL2z-GM;b?4q zI99SY5D2vjO-les>0#${+ifeiB{kH)DVIqnr%jMc$v9mE2u&lFC~FPJ5*u&1Wo6y9 zEzQ)`*Wma2$M0!x@8rONw|V~g?a9nY@+%|51Dib0ofdg6D(7?%pc^L9c**)3R<7LG z`hit6HqO7~{axLC?E2kn{N}lBn?{EFA8>5zs>^gS=<(SN@9s$<&~zPLH}D6;EvC=k z2($}L5KEM|uDog0FYj9WA!=)@QHo1mkw}=PriB=$zvbk~PT|g#Dc(XrvRUAs1? zQ$u^-t!z`lyCT5n4-hY{_~o4+{qVZh+g1?@1;_t8cI@Q3nt5{x_DLSKfFX)8(f(-t<2F!NAK(DGncM z!_MdSX44}-%%)SD9NSJ_&3UIpfDi)RFhPjAa43j3O(xpVFpq|Yc>pM-=VuvH+zNj%^`5FPY8f52@0>LnjmB;g3-i;+( zlmHFsb5C}yQ{$Qw8N!8->2Uu}K%ZAmr+;FvZxMKA6^wZljz`$UVwzke>Ha+sK;enpV z?R@SX^%u?|pjgAV1jDfn;b>%CO-&_WS=zMznxzW>rY*;xNzAR8O>^_YL^?I}P0w>L+GR2V!EhoRiEpg0ufcKt z^cA0oMUC~ex1U*`8BKlNv90#W?lB^X(sc_K)g|JIFrMeku!z%->Uou%>1bbP=W~xw zwmll*NNnxwITg6?q1hWly%_yn=*a=h>( zc3F9pP$a%qNwwE?Y^;2CyXU!uR-IB9zCfronh4^~aB`#NGX#(ABhY<<(o{F4c8Xvu ziWv&x3kNYOq6i_dQYl=^#yW9`e9mSdkRTPCL#}E*xy9F_4D*unL?U6{ziN5w>CV1Z z6bud~lOw|e-%1YlJ?c6(h7ckF%xKh)?tO*w6MLyqqr~UTCbF=RNL3YPEP|I$gKgtk zIZz5M*Z{hL7KmVtq^LgA#b{?2seR9J`tUA>7Oo)Oyz-Lsm6pdTEsq1>I$ol!tz*NH z{aS5msP6#-n6cE>O!hP9)veTKx|rM2Ok#cmdceT$JB@Yhbu!6*l;?u$AZ-g!2wwm+ z1Iz$gqLg6yTw=GbVph(f?BHQ~4!p$alLzQoeK&3-aakFJfCUTY;ks)5@k4Tl;knM< z(M+}_7z|9S^5M>-)V;cyC5z@#w)CUuUKZ=fZk+xuWM&kZO{1(lXc`DmN&v+YSQh#a z_yTCbC|V?jF{_%A#n%vTTuglT@9{tLZBE_3o_xiH3EX6;teQn{*T5rs<$~*0#$u6{ zV8}mh^?UsA9v1CeO=@`+dz55mtRL%NyN5akx9%ZA1}YGOopk`(>**#FR5IZ(oEm_vhp}m z%Bz0G-+rCu*S2!a?X5%-CYjyOW1l)&SZydOtTEQv8QZ25#gik>o*;n$p`nC8Nrjio zV)vZJ>N!ocaS5@?O2oD;B+IJFM@lX$TW|L;dbqTvT`9da5DM0X!hx&XxjECu(%sL} zv}QFyGe>66HoVkOadpos4Py$b@$Zunpa3Oh@q2*`slXi_A>VP5a6<#(ic0kVdx62~ zML2=TMP+kckKV4Kq#iA=1;q}_lIwjze;^R>T@~ex(Ikt0_Y5sJEhVUuWcK_Pr$ub8k(jdihik-!f_mu!x`F-b<%aZXLBZq*KFt?R@?=E0IDhY=SOH7f&u}a=i<5N z7ED42{DDxy=MS_frILStYD;INB-*z4hWfa5^er$0<>jF@N~ZzmVxZ!?MbW`#&7&*O;|z1xr8wW$Nx&ch3CQ@F2ON0k*7JMrBkhJOiKv zMpYf79lgihOnN0S^w)`7E@%oE9s6FoC;?MI64?IqJijJ1{nPPTCGq^pBVhOuD1<2Z za?mFjK6;S!nN#NwAatGD;;Qcb?!PjUJVMwM1)t9=%A2oc*%!ac+*>|;!Nh}y_K_Rx z!_)+0jUOe!@;uy*4gwW5RnGC$TA}Md>e%)%Ln-6LP4>ZaQ;!_o0^>hHXp*(+Az=CUN_FP^}#!p&vr*!CRz zzV{ej`vC+XmBLlUz**cbl>&(XAy7h;0ZXTy0EAlTGlVv#yeeihlH&e8A-M?}g0ACl z^TuQUfM;7YeC!kB!)S&{cy`rzT092Nu{rVUUvO~K6C{tnP1s<3mypHzCMHfOke-Jl zt(c+Ig2_a_x&$a<%C&`3+F4=FQ~d0wqAu!?>pIBZ@BSP4p+V-a{S>}vys-1=Iup-* z(_NjkZF!2eUp>X}kpo103ORAri{r{k=91F$6}G_(G3Dd&%OD_xnq2v@2(1{;>QLY} z1-`C>oc#4O*dwWnz6X@)>g2@Mr?J}h6ERg$amKU7vt&$ifeD0Xf&hCm0mg*$CMZAl zn=4_^3lptvKr>9lMb7*6K#*8%18%55D8D#!^d<4v##$AbYCrTM`JSp13miPxVSqm-0*Rvsf5 z0zfl;lr}A6+2_BEFB0MCFMf>5BrjSvQ*=WOg{IU9&^8kUoOB#F>3J#y0#(cay|HLM zLHUtz6;12@oTkryfk;)&IfD!x-bdH29VjWOyL~Oun!54-5(}GXy7wUf+P3~2d$1Qd z77Hk>z9=dWAcTe{y(EbJGeJN`I^G^fgx2XQUoicmR0WfT&a_UjtenPAJwWq=kBlcl z0Md2H_4ji4$4_$jCr@IA!dS^67JmF*qBV7BMnT+o{X&`_{4&BYY1{HMoOBv1J;DT@ zi`r}Wf(J2|GKE%$#Mf?)WNQsEUNzb;_3vz_6i2XXUf7o>0R9`--^IH#X`8a*>q%;L`O_0CWq z$DaKO`@jEf2KK)>w!h(I(hMIx#PE@WG+$Jx2FSn=!Pp9R9qFPJug` zt2nM#s>T46yv&i;#;W{=7fhPs7EX2XF z#;b(!uFlyE^1|e1EZ&Wi2AGj3k;=KaBO@67efsZXBDUm)}JSU?d%({{Sq z+(RSn9VuZ12vp5O4@QbBD$$C{OLbv!bH4IpY4o__QlX?oXd1!Na$?oK<^+* ze&KxOFNSF)06^&aQ*Ju@$jGr1UCM=U&3t_2m1zD@p^@RbNKZ~^Vic1mCgk%IG*?oh zJP)C1_+oLQ^Xds#)gXt5P(9u4KB*oSLcHU*$fqR;o)2N@KlCiCJ9D!AoBp}gO9JJy zF=Hjuk_^bXN|IQf)$lW2~IA9lgZ*b7RvGPJQwK|+G?6% zA~X%nFwlcRj9>^o5JK7(a$o?N9CS3x`l&$tqY~oyl;xVvAUG+M3Mwf-ruqF3h*0QG zLSaNWf))-VbQ8~YP@ac$-9k56HxQbRFbv#W29?PovuQ*&i^yf45z_k+n*JPwXZfhMXD+AM@t2}&U4DU?c~T5eIqM1KfQ`XfPuO74#W`BB7f3$Q@o$SvB$3ffvu0ot+CigIkrjU8K- zC0o|UA;q0T&dQm$-Fy4v%?xL_iKH~NbAXFk-hJnt^WAgqS?(kCyS|2U5g`PM=7z`T zKj!g=p3pRRClQ1o05C>j>e+tN$iAAGnR+QZn~s-FkmY177XU;M;15=Idi=pthYxo& z-q*epjZO7XRkbiD61jy-m#*OT*ZbqM$@sI$So9@I?Xt+Tq@3jdK$K+o0-J^t{~&LaolcDoAKu3Z~ATEDptnyP@VLU{mCH5DBP?!%>v zpPa~~6HhW)ek)kL3lM@pMfJ(9uRrq4qmLbdBuU_$7e*))geV9l|E*?JSBEh+Hr1L) z&YlxQsZo;Uh$u?n;NYtSbS1QE3lIenZjbM&jtBOjTz>k%!QX@G(#~?u@!6+0VCvZm znRN1BGU>!imTAWC=5tpC03igTBm;yrdfYD1GMQ*|^JX+RZw3Hx&M`GL-G2F#tL)^Tv(_wL)XbDdmZ z;qdz0pf=S;MkXdqJ@ek3xWbBEK$K+oLzTxKc<{if-Me;x+Ut|4Ek$i@TXFvUhfl?) zC!W6(J}U;mcJFRQFzElnS3gg?cefy$PM$UN%sErnFBp2JpHUiTjIJ1rMXNzV2sF1h zsJh&pobh%=)v$Me`-ww`_up+D?wBUWr!X-dMRYoj8#ivnGwI|DvFP~ork-60!ee)HbPkz{P@$z*K$wgpwe z1!P5oKU8_LVN3IgT|2j-p>flK$<+E{{r+|&i6VCHY=O_~X*}2e{#kGwNhM6gg_@+2_tK#5HgqIbASV2oP(|*(Wwmk;PwWd;EZ3eEfa>G>8I3oT6LU5QZ#p`FX)2( z1tm9;wm+K%>noCox^M*=YOAoVVIu-w4-`c% zTraNiIDq=vDgc0CT8JmpxEdM8;Mf#KVsTKqe5z>+fuBk*zLmk?hHzVNl000R3O~Iy`FuX1e9+!r$+sxWN|!=}z^6F?9M1VL~tKya$iU%mA{Ug`Ta28Kpa844ia_dr12BJytHSOfv! zb!lkWSOda221X}fQ+ivuCdOhAJr(s4&c#m6?P_#;w7cHD5edOp_wB}^J@-Hq1*CKn zoC5+O5c7%)q+tF81h2mK7JC2vbqtP1arxRUod4}*bnf2;w@aG?peR&Q#$nhLE=5B9 zhAJ?dVqk0%jIkxB(nvO;HZpGRI9L`^!`!(`wsj6hr}nAUKgIhni(sh{t9TxpoVq!{cXW)7e&8 zQ6S6WoM~AU(a8kjQ`48f^+%61w>8&`9Drflg;f`Xd8-b`q>TTPf3#036LNm#8Hs3h-I1mnRMbg%QPdiiCAZ1CUHX1v`&{> z1GPD_nM~Z!GcSDqyMK0H+m_8c2qBo&&D@5!aOFwvOR+hB-JuZB7={h#nRN^ZK z_aGb!6mkJh2uLohIvgIbNUQ|bE z=;E780W_LAs^w7vEg;6lu*bNGwN+EIktRd9|!*VHR#VddOZ-0DSp8t5_+t|Lf9)x272>EUg0f9v+VzXIHr?S|-p%RUCHGx65+t$cL~a#FTLc80@B#>V#VO;^EgQON!^ox9 zf%hA^Z9(jLpejnw2{afNMsFU4GWe{SNs-9 zaesg^4vSLgmW@=_L`pZHTQ(@?AOuc=m2*3fM+0Zv+k3h%xESAZSim-)*UbSqF~7K& zLC*KN6RtR%`2FgOCyO#e0s#b%{OJ!$m{P`IQ3}SKVut2E0iNT{bNuHDsC;DbxHUbQ z&TI$poB6`tbqfFx)>K6*gtd8v&HO#SkOUQiJ6Svo6e_~f`xfI{G7o?v%N)R>7ElfV zJhCK-j*!LGUFj$hxOmdMYbBJMSE@W&$h$bX0w7D00Km5x%W?oPYvuZDJQt_)C2a91 zitM?)j28#{#X0BZm3G4TLf%Dr0RULG%>bkqV_6OWqPk()g{+O|MVu43nDWZx=jC6E zSwNiUu9x1o7~hh408Gm!aB`IeR1N@crf0JRaEg>d1y-_Bj)1&KsX|7V?;g#gJTP;a zA20fEKJQ#bnqxDY&1wLyt_uJ?-CdVvv$~fvUQmXz+=}D{=EWdjUb_m50>I|YTZ~Vh ze?CHR&XLLJAcV~JbayS zIg~nwC>$JvqmxO~vVOL%0C3KK7#SWH!GS8D8#ZIGsWaxA^87(L16{-d7-zTX^rG+# zn=#ade6THwiK!W_r@QMvmXftBwLnjISK`J0dh@?OzH;-)_O@mrn##bU1fswo3IYfR zzyKluv6&>|@f472lNHDBVv5`vpUeJoAa1A)Lspam2sUM~C~rDbm79EWI(F^bfBfiQ-Hr#j8!sF$N4=-} zst6%tPd@yhsHrkO9hrtK3Q!~gvM53l1xTWhJM_SU{$L@a1PXDUffqJBE4T6%W!O?FJNe2E008u!?t4yEai4n zxj0W5D{Oc+b<95Ob0MpnIPB0>22O+DCMwoKy0n8fG7}LymFI&dVP>`&g)jHJg|-c06_2Q zzG_95e%rXIwtDY9+Z959sbm(>bjEozr1*$zPXCe`fiWk^sq(oI_PIbA#|NK$o*f>a ziWsJKxTm`-x*D0*6#xL}J>91%vh-t76rX6W-{8HsrI~;L@r;4dnN&$9Cx0FR%oSEm z)j_xv3E;rTS8lRvkzs>_|Lb3TL$DU#E=K`91Dz zz~_|}MV1v=QVi2F4AZg_skEI+XS}j3-LP!>3&z+F0ZjLFciqwR%a#eQf(9vN$0=pU z0fb`7^sZPky&XURP8%x$rdvEMu}{UoOKaTNHzABU~e-Wh`^) zZ^_Q2$sJ2f5>qH?5}`(9|DV3+Tb^^C?>pb~{C@B6ecyA(?xLlnxV$(30FpQ>GY4=r z`8^;a;7kt)p9UA?>he-D8|btwh#<*_L9D^ZT2*P>#) zBZz>hZ>SGZ85ivBM|2>1`;x*3h-h$kEzZo;DfXXvch^t_7IlvvlV^KI?oK6ipz=?5 zhZC{50<)@yGDr$VNR-9{HWs?(RX>S-n)wu+Sln}uLJ%dWUWSNJKV5fkMh@g6Gd@q- zKAoVGZkH5&eAu4{_mZ+xF2&;$hA;coIGXF|>ZWi`U?EWRBsx7m*9uXG{13tkKMcgu zMA?mvRAMldJ#AlO!k&%(U zL?ZFi^85CuZS@#b5xa)QE0eu|zw=L;2qYP><(%ey{wxbNEq(p*mi^&jDaG?~sY*9~ zc{h1z?E7;49!ZdOiqUUUQe{@r(lp*7i16V&L_hFlZ*XK}WTq{WC-s8G>V++Got*pE z*7VHmZE6_|X7jh>)(ZpHQz_ZOg2~FtxmJU8dfeHvix)B~XZthd{zYB?i#ngXxk*Cg z%D!JBhmBElt`~I#ucpH&qco;~P0fUFNGK5Lc zUYY5}xT_W3pu5y4s2=FcwMmo_w1*y&O83KTFFhsHY}(5M!YQVdoE(CWPcqLiq|y%g zr8!t`cRTbi%Q4^uEQp)NBmG@9dKZCz1i1X=rI=p4?81MH`I4uvyjU0GI_$k1q1D`bEXaibO zN~Ax4t+4Zni;Mg4U!nT#exH?~^@K4!$wri_U=o00C-X>#*^WzMfQoSHUCcQ#K_}<3 z?udDDJ==KR(-lsk`ei%D#LB&g&j_wAqk2QNJkpu!wO3wI2NGqHy|j>jWa#w4F1&1{ zv3QF596M2?*FH!e0!nwe9r-AMd?txXfr`baSL~tMfLGG&ne@43|n*LdUL#0(+e(k`+FDZ-`SpFn|jR3AqSjt2CG!*J7OfFkm55PSd*N zVP}4Es52fv;mti0*dz}I7@2X~qUuIg!?BXxRWeLoL4mo_y-#~spi%m8@{r;IXJ^h6 zr>|vaTgk>bml;>RBO{NXNB+wDeI*H}dv1lo0 zXVx)-xjnR@NWEv|=*tPuo4XSV1|e3-VSz_~Na@%fxp3ja+v#bG6S+OBt6FL4=@m%v zSXw$VV~Cy?P;$SZa@7C69n$Oi^@IIBhf-2fTL1ngkF9u>w8G}`!E+)6iE4)djUqO? z+F`+f6|O9UMa%|a;nh&^yDxeC)~JQU_4sxXTaFAw80=o$GjNt^)o9{k+bpTe)yENf zfHz#meEk|4g=f8aBMVYldMr9y8nYu)iCia#q7^OCiY(ec4yW^r6Smd@TAkE(5rE&^ zPxicyBIX9Ax7YMtTlB#vPU5LDPHIPkf`aaQXc(wgG{HW4^3l?^94#%aL?^XdV2|Vt zdq+nf-B^Cl1i?^YlOmIR=Z;uwz0u~*Cck#JEo4-S@;u-giOc22ZvHrByu0RTbLkRO z&$hO%uEGwf*Bg4tg$$6jg18n{qb3?f{Gxf7k`gOR!9dH<@OHYil21g$;f1IzJG7*< zG$AHtqwzPjxYeD$Sk(qn&D4~9b93`*znrI6P>@8ijfjzv(fxvD{^!)Y30R?hp!(;O zD58k1QaW^^&|06frgU@XP?MV^Sf{J%1D#g((A$;wW*wgt{0ZsvJ&_AkuRSl}k*;`p zvewtnEWdjuWXt)tqk{sbM!(?akuJ{~C$+belcs8gePC>a93PilZdW(zlZquT!wqE|G3}_7)0e?)WOLh*@i0; zM~)o1;^rm@a%npA{AMIxuD!keOt}>T@M1N8`@`Hm)|EQr_A9P4yQxVZg+iI+A<(2B z!aYhgLrlm_{f}>7XZGITya7Tf*GhOHN?u)E{kGW&8S@79oM#?Vo8%i=mrm!0!C4}! z?L3m)Dcr|XxN`+}zqMnH|5{vJ{2l8rUyxwZmsU#0Gmu<$p6q6Y z!<$=LwDt5-K}`I<7X<6^IhPt|5EF0veZFH#oV{7$@>Jq({bJl}euvfwf7Y;m;U5?w z3@$nzcofXYWYFJLR~eS4a8v0K)efc=c0J=Ym%o4PKlnyRWZ?j|eKj82ct*?0;E4Z( zIE~lP)N~8vCEus6u(Z*4kMwMhfE7|~W1%UVx$nxD$jasmG@?$zr5*_-^*m69oCFX` z!q!ig4TrP6Vclo5tJsa`-=dyJBq3lDebIQR_<^|Ht?2AILl=!Aqo8TI2lH+3C9Yru zc6r>DCV+_^NkL|S(*LP9Mf9jGhYpwl&B0uSwtB`Hc}W0o?L#H@Hr7f43V8_qZ&YoO z5&k-nl4Wtyz0T!nMx|9FO1ib4ZCN#Xb6hWr`}XaZ!mobfhLDY^1S|;a zIv2u+Fhe(#?7o6YuUuQ<`p^sRE7fu`HkMW%x4*lA$+W1VI81qCdp`7)&O9nj>`V<^ zc^V@k21Xl{CcHOgx3RVLt;!OvJ`r>^0p|8zFcGrS#}=3El~WYWC?nwgKUcS7ZhClL zIL=Dqksgl+dQq~3ejV*u5a@x;ogY!CEYJbA2m1}GZY*vx{r_r-XqjO}<6~(PWX3+Z z&LyQ1slw4a38+010TS)BU@)@06{;bZ#L=q0E*NX%FWvf2(>&AS(TsA@qDh)Q^@YjECJUue%eRTN-q zo%=xsr>)I?x0@XyUuU+K712@nW!eLgC|j?sq*)`&nchR#wt6}8qlJ`l269UN?E1YQ z-7)WvpT$Xr<%pXgpiNtt%GG=HqWVGL>rFEhhRbSxYMducAF?5xS<%&g0z=I00{{rBzO9xgpI%e6+9Y zwImbJ{piU{UZI*#u?fk_CQ$RwMtURsb6dZjuL}njvZL|Vf9x{)`}>F1_f!{z1}&=W zn@|_#NH@wcpsdw4VL9sag$S`cM8j2eV^1WF=Nd0om+(0u4Eia#JKnG}grH;RukAk-WBWRi7YE{%TMNc48CN^iT-1){*_=Kkeyij_X4P;k=F$p7 z#is$5mX>B$Gj8?7iLU)(PqZh=a{eMeG%|XGzsz7T_74(JB~}P!h#)8tVQ{~45lsuINVsf z_VOhJcRJt3*|~$n7s;{^dKl2xSWBxIRyDU*X6r!BO_9)K6kE$Se`#syzFS?0z%K=r z2Vu~?;ZGhCtZ--Rg^^A2UQ_*|?)O-*5$mcr=H(BAJw?J0g9{Ijs$qa{^*{33K zcF+UK%J)b8?|NvY2Q~$An|CF8#8nbMlmieSHZ6OK<4ld<5wnOhTMa zKLHh2IebS8ZzYI)C}fI3Eqx?%Zc{z(F}oE7@@!+a5e|pE^!|Vc@hb~%+mJjNGZBnJiaft ah2fcV?nzxL-vobd0i5|ovwEyo^8W#aCrhsY literal 0 HcmV?d00001 diff --git a/doc/images/icon-paused.png b/doc/images/icon-paused.png new file mode 100644 index 0000000000000000000000000000000000000000..eada780f99e337cf0b0f907d2b6910059f207933 GIT binary patch literal 4852 zcmVbVvKn3hdEnLc*#(4pf!UwDk2 zJGb8T`kTXJoIP`%pa1N&mkZhP7hI>d>N+hZW^&z@dmAYPhG}A&7Qt||+YSVG0t3Pj zBvMU1hn{%sm1m!On)ddMXw6-ZSS(6c*ETFW*xlcMUARu|lu~k4fi5Q2JrA^O(oO4L z3da(Ev1Rk7R45eU^2eXx)T$=}!C=o5k3T{t(}YrL+4nqr_))HXGWg>8vu95f^HUe@ zRkxMMJrNKHhDbJKUis2jo;licuPM3qt6=3OAOy*V%u8SX>KFg~_r7!l%d*f~&mQS?3ezxd`EDggCey_5@c7Pr zp>*0Xtq#k!2TapKqtPoQbUCu(6<``Bk!bw+LyteqTG{F2PaGf^4!xnZ=A%p3aH^FH zx|AcVlQY!IR&8VMuUXo+swvWYEQHUXfuW_*0I`{D;5cfWD! z?H6;Cqc0Tm*%PZp!ir2l2!U+}h$d1meg5-@?s=K7?0`rlOnb*hwsy9Mgkk;B`1s_f zj#Is$wZ3lxR73LU!WB{od19 z=>Vk_8hvW$`Y=+;2Y#d*Q#|@;H_3+P`qk zzixn&cA`?$aEol z;chjA1-^$*HD!(;eC*L6fOd&CZBxqKMSVbcCG)Ze3AvF1H1Fi}(RBJ$L8>LO8HtE{kg<%>? zlCg19D>nuQjyl!K_wE!Pt!OOq+`5(w-UC|pT5BA~Vc>EfwpnFEbc8Lbk7-Z#lZ+|s zaFkFqNGKWtVNlBT;W;jqVxB@NLVvD<{`@wsUM%9MAe}qAuxx8lA{v|GL}JP3w9*$m z*P&J|pOVt^TXk9^zVIi1oqg&^cgiyFxjndSab1`G%YDQHId(U{&)$|k(wPLA%^OLz zuEPu_z;pqDMkCOGKsg2iLA5kZabk#(PsW%WEAigVy~hj>&_U)Mkg7% zJ_Z^lCv&+%cH;ZF$+4F_*FpTwxBf;S?%B8I;0yTzg^|nbXt+qv_V;P)+D7B1%~-Jz zP{l>z>I#|?f)bi(1PVOr#g4RxB}cxu5GF_w&}L2f3EpLF0z)#Nx5L z>fyPPYu5(3{K3aB=cmSAuz)pBZKo!upm32dZF`GH9*&Ud>>-?rP-7ZLe~Q61P=lBf zm|4lH-ZmHhx$;1SpeowH*h(bT#HNS0lit`t%hf*4U%1Avu2-ow?jV&;EvkzU(Al{O z&(p`QUQ(yc_FadLHZ&(&Ov^-Rz3Ru<$QY5zZ+P~h*Ex8&ll6PHAwoGEeGWsviI4*b zl}G4#;5BIKe``?ECqmXh)(Xh#04A64%renLns{>u$v}l<^*mQcA{3n%!ASV7dIf_) zvQwoFv$gZ#Ly1JJI~)nFdfh%gIz~pF;T!wkV(;ho(a@2gtlvfG)8I|jQQj(A*9n;U zl=aKx+ze_3l?u4UN$~nGf{&O5{4m`SeIKrpm8Cd)P%8P2wt>DFy|!wwv4 zY)bl}X_bzt@kx^IdA_m#4BMW1j6^Hc)N2^t0L-85S>*oLdS>=D;MGk)`k*!brp3EXs`~&5Gikim{<)I%-#k!tU!f$_rYk7- zI`P&GghS0l%kOb%D2)g`7v8V%Cu8ds2 z$=AEiu%~A)vGo&Zbq3+h&HD9z!MW2WP7Q3^|IVp_Wx;_bCGDFvsy^d`p9s#MF{zdz z9PtUNRv;9DeFr41t=cCFsFsUp`8w&=!|dF>jp6Cv@_K)mmX7Th#;xtok((2gi}@24 zK)F~LFfHrIP=D|Zv`8h>ktIQvr>jKbp#|Sh=L_s=?B&Tr2FdnmggS$s@7;lOr%iS| zbev!)hU-+&TKng2m2+=?i;eBxtbh2;8I$gVKOz!IQ=A?LARI|iE=_Ua+zVvB?D^(V zH;Ho5#jd_Xdi`PcZ&!RWd6kLcdZMxD?DO;4GD8Eyx!mN~w=Dpz6{SM%f>QEGxmfsa zW_?Rfx+y_89KESY9?IPO+#s@luLy4J2ba$XIEyBpI*FzUbhV;1k=-Hh6ipAsk2f>W&?sa48H$A+WNTb9)WA|-_IZAYmA*L6;ni}~-kjx$ioXM6Hf`47%N zP5>wDKoDX0X{gp3DLte&S1{EorBj96Uo7%7DQ z0dVHu#~SQCx%g9-A)EF-L$y-MyS3tur}x|pY-o=*dzBj)rb3utSaZNNC2W zYi|KRYYqaZ2GfNSni{Pcqib(Rw)M5%*3@9{$+7w4SE~XNrlCdGhQjvD#$rO?;1&S` z3p`U?sFqBm(kP~|4I{m=(QF11z?u+XrJ_!- zIZ@qYhKr^!q@TVzAO#3#E|C%9jtSrbnE|wD&=`}*moRNRUirU^(NKs|scZ~pRRNd}yfe~n&7<0m^QkgkE}nLg;c z1C`Q1Nr99aVF(gYw+UEKDy|j*$&O4Z6OFqe%bo|mp2sUW2YxxAD)~B)Wvl?VW+0`3 z^aM(RFci}B!D|g#8F)B^1Eg6)0_;#ghJ@joTI$)HUF%zCezve#LS#JxENKGsW*QVi zfOG}2{!AqWN(oRJ%TOU;LD*R>0!-UdwrzU`rkYj$PT-d_tEyfLsAV`oB?Ve(JSpn6 zg1;L4$Rqsc8epJpz`T9@Y7wBM6rPlZ(o&$Mo=s5nOg&$Bg3H?GRIm8_nO)*irRyZz z0sOoQQfcAc>G7*YfK#qnRnN7g^aQ5TzT*>f-du@!PH+j49==U4!Iq}J{&3)~dne=i9DchR2Z7 zKxvKijJm0bxprE8C77nB>R4Hzbo=<#A|T&4lo&6Sjgsfo!`=*d>fqhFDJ)|JC?!x@ z;Vs7pXpM3Wv=Xx`V5Xs>wEzS{D+(2J5-8q2ezgd2#|y#Ac+MDdi-wY(@QWD@NIy-L zbziWY*AEKi`v7-=&sreTGyDen{QbvD)WK^E)5f*}jAp~bz|`&ISBn6xHGDiAzmlCw zPfKae+Q0A2ZatO+<%04|q+D7(t;AfknVt0+rNA^zq%w;`laW!NaQpaGBfyo$zns3b z?&{cxm{d;CkHNBT3eq=&P?qll)EscROdlYn;rju(v=dbI)OS93v_=>vmL0`1Py?gk zzM;v;F9v&0R&O7_ngjs!z54E^w{CpmWmT=wZ&G;kfUCK*_--#X{R~duH4m5_uf-km zYmI5g2-pVG({BH%4_iJ2uHWfCt4%<$??&R}#cRgf*^!7cM9W-OR|oHTzQZz%#ZwTa zG@fJJ)m#k2x?{gUYl#_%5(uS0m)s8r<7fMBB>rcx_vC^I0IN>`z@>kEv-9=APYZ+P z={T0%?C18L4_--uVSra}mnkK0ITymu1Elh=7lPSc>7G|Zdd}>*aofaet+4C}p-2lh zH72IirB~0ly$gJ@n6hi}O1L_j3;q1W*>x??$8P*(b4PQ~utGSMoBqxdp-IFwW!)Je+~AYT=bui*6N-3<&*EXzS7oIYWZDj;`vx}8)hJYR~baPE?e3) zKlr-?xURr7{U(X)`rV?9Edo!9*~F%`N$~f7+l}jK0=5s>^)$96Xl*i>d50DVHxi6w z(6WG287aScY27Qox|I3JVDHJHyD7Ssn*!cB{(5J3BHR~0*fsR^SY{o;NGFxTIBl(2 zHnxD$eu3bdhM&)S(m;80iOu?qL2L7!+DIC$6~YV-p*27F=U;Z3x$>v^XC4{((@1)qWro_ZX~L~cqTDRf(kf{VbCC zv3(Z2u5WSC7*>#AD2*L#^c|`*hF2ReoP4kK-(GpAt=I94e;VvPxn$NM?)RS#Htl_8 zsY^^D__NYjcEbQn7r z!LpJVb_7G%NN*ZLPEjeBZ~ptQ+K->Un0WHvI2LL&=F^)%xLLvHouIpa}rq@3bbu?z6kv^36|lP3+s+ zQhX#HaW^UgXknstKnP*ulTbq-HOj#dN>3F6SFVjjd*A#h)BEww_*AKC{REgC>^*r; z`+PnN0%pVl;1$%KLA>|g`*`7nBgt$!`PFn{;%On=W#MN*K9>UkMb!|BRP4KZ^X7xy z_iRB&$LcFye`#bKCtf*;-~9T;r_+h}!;Wn&IZq3b5~*#wzL|`HD+&}vg~u1@(sWM; zfEeQp;b?XD=51Sk@#lL!hL)B_5aEg=7!07Za}89@({z=4; zsHm=e+!qXgrEOJn)a&))gLCI$Tjn9%%1aTof}59~jA;=~~% zHPv&yye)>V3jp2YMWnLk7xzDK@80fRTj2NmroZd$y|A~bxdC2}4zUQ~0l?$+VDpyS z@ZPC+_veh%r=(bZEm*t>FosBF&Eucg{qZl|cmFP^stO{S9u*Z)D4fsv-(p5hO*KYF z;vK1U_GPZ9t*WNQ6h#GrK#K(QT4>Q4pl}8LKX*vSo=;I&#=;rHI^TiFo@AsjlwGpe^TfB^`pN+>S zFWR=*Lqs zC?CO)AHo&h;o-3{+swUoBc^c8CZMPq!WC8fwr<~YaMQ+HAl#disVzjEo$WYr;;o00 zlVjh#k#(*a0AC=~wYIbK;H_Pqh*pK+-sGa?atc?3pnH8?US9x?WkLuS*P{sw0>Bsp zV+9wXs44=X$agkv>OeFa{?K>7M4L9PL*7WgWSO~_ZPVa|Bjt^FSQIeOyi?*jEzoUVls*T{=sCJg2EpePE~bgY7JR?h$bku1}~`)B*`$JgG8r4#W_r4y4^ zEvTkVK-0YlS5!UTvbt^m#tm!G(%M*dv2Z?IyT2N#ih>Or)*%!Ow7z`gSSayLQ^O?BA5qE{O$vf(ihk zXyx8pHg@h?zp)(vmMzD>nbgo!iwzsrM2*zccZ6^k>@uldUmzL?Mh>o8)da`+(-(X; zt?gKaSZsJ-Hj{e7v8~vA*Qmj0<=*zSt4%wnM>CW}Q+Dr3R41QO}OtEO>O zN4?NBj*5r}j4^P=7M1-rHrHc#AhvfH8^2qXJ5d%M)j%-3r?##J?uVrI!(&G=$O7R*B}7!E0W>syYOJFtVpj_V>6-6qcDg zB7|FL)e(W+^ZCaTJ9l+ORpq+dgNvq|>Ee$)W9T2wB2-(8+QvH6ty}@0Plu{-Xu1kT zVIU%yc?VKT1007q!(fQ}D7*rkcDsFs=UNhgdhUB9|5 zEtZIY)4eI283uMeupLdSYVi7qfinpcLSn|76TnInh-QSB0Gs|SAq4@FV39;$+(F-H z4(-)mY;LbZz_$gz|LyBYrYv;bQUO)Da;Wh7G^m>1rBu|fNpVfzS5+N>lyb?25E5tm zQ#doiasQ{g;jO8_3$YZ=r|tPe84=ug64t;N+=&#-a|0mTg&Ou1!5}~akcFlQWZ{2f zDI0wg23l&v*s!h! z+`Fe6ZX|@?#Zt&P0vewyxtqu!f93*mZ=J(Oq6+@<&IW903gH`{=|aHF$jxvs$2rKzOqIyQ_{;^7OugKvYg zXl3QK+0d0JlXG$UqQH*(cOo4Q;^_G#I0MvK+b)betiB=C<_$ddg}bqP`)Wjjo;mBh z+aHHKIZ_l}7Iz*XQG72XNKnB{1mSn5;@Hw2#kTG{aN^}R5D8kS2+wcYqn9R-Gg60C z0LU5Xn4+q?hAwzs0%E949=aQkJb2rJ_c;E}FqBA`NC-Bq{!-4EgCIbPB0zwLGaNe|$35$-(RIfyc=PQy zvE$Bie~?P#Fccd}CMUT5TN1K{Am=talKX zhDHx%jeLiu>(Df1`kIL;3w;w_v~Is0$1fRDVT>4K0D&qJ5_P+`X*0cU&yR%{p`fa{*3hDc}(=o`sUds8JY4NNjKJq4eKK{x_=)5gR^ z3Kx4X#*!1G_vf=lY&!iD!iAAa^w_4k%gX2Wj*kQ$QdPAZU{S^jSs6(ga~%6f&PYAs z*mf+NN_3~DQu}qUx7+9U!gUC-3DsWriTm_EiwRc{)Pl_u7!&sJIM;eFvcpe4h+ErN zEGYP~o*@9htFaXMH`WqKfQSSU7^GzO;3(@1G938cr}5NtJ^0xhqfn|U3z-&yR4{t= z>;!J#)S;aC!?E}ClfCB{Ll~f>V_Uy8(ut?7d=9`>4oGOa2aIzt6aWyyg>dHf6*n^|IGYEG0$p;Y$dXO?KJn*$=an|5c2?U6w1SG+6B-X6- zWAyZCB{7x06Tq95*;mW%%a-Et5Z?B|Ngzu0oyhW|*nuN6WHFqIX8JrS%A2H2;Y zy!@%J-&;2KTR(ao-+t~CX)9|;udgPOD1^RgXIF4|ZX(Ic z(itXQ7c!rP$YlWA#AL=HNwgb)G9TMZ2LQ+;ByCHne#sy~wghDzh_ns!+z|WR&NejH z%?+{7AMeM%AB~ZBO^bx47GirbzL&f`iQ>5cL0}%8&Lk!M&9{GFcJ~Liwn1bJCUXX4 zE(;Pa7!js27JOb$69eXb1h#|#purOiRJcqf1{88zR5X}OSgL1W-bz!im9?@Ev>03o1OMCGsF7^ae=EYa@ms}a`0$g*Z7O%jXd1q%&oX?^ItLLrI&UY9x(3gpr5L8HOtTgJn!?JGc1GRUI&$O0dhB^iMB`S@P4E(ihD4mk88`qTM4 z5y-O3)c^Q9L*T(uo-Y9@AY}=-QnDjwzAq*{R4k6>^99XyVc_&A2&`CC73LSK{dwc= zQnrD7lJOb!o38BUk1{F41{g00M>9D-X!cx*Qbd@&CR3F%699nb+Av5;#u%eH8&ELF zd2{@w1VGL(UsOL7Gq-st64VQJEk&{B7eyguq5KtMmKK!4VL=1P5p2FhYG5o~i0gAe z1d5%|c{{#K=>&6-qG)%;-7D7bOfL^#+cz~r=5ipHW`r+>Jrbg576n@-ahX}TE;h~w zz-SsE%xF_l12`i9$SyAcM8k@0&r;o)-BSXAGL^lxeFd5-yiDe@jNG{bPse^KX88m; z?O3Jbu+M+Ivy6pPeQ{9fV9~6>84-Ys%L@Q-4rYGtP8D~R`+ao$)Nt8^e|}^qL@L7| zis5cr$l|VFzVjp@EsO8ox~eRyJb%0&DZ`p8e34w&B>;WP4M5z?=6flZ<+Fu{lu#le z`ss_kWoEE@`)YjY{thNG2AkRWnRzo2qA;Xo^NlSPY`%2*@T=!bW$PT_J(>cN!U6E+ zas%Kp$fG{XDEc8eM+=llSbporua`~QxVjqTIBdq=#fCN#@>r*uw^r8h2ae)Y?>H5*s2O4aB0&#E$0oA?{s%V!05Bj6SA5?Z8+kHVRga8e zgAu0fnfbhwbzQmR%Rgh>=OZN;pi+FF28s$9UnJ^`QuH*jqT@!a^up--x+@)r&DE9KavplseMJpGZgqeH1+k<)oQgg|p` z2&ekuc>a}sqzoGaV`&`g8N$G5x=iqb@B{)wB;Z9|bpY|Hl#(%wqX2$@LjQPSewVN% zHs`aHvQbf#Up237>k8Md5SQW^q%syDXKTadS!1avl8mG*HWZ70=85qDAS6NIKvg7w zno2(=5{5E5K6V~NpJI%intiQt;)yc8m(~Z&UYPSC;flW+=)G_@Jvy$etnl&Ls23_H zxI#dRQmmhwHI~Xh#z=yd)Ptx5P>G}@2ubkj3L0v{sH+NKGGQoV@yP)Y{_b+&7vyuf z00024@VA8He(~bD^RG+|kFwg3uC&yIP!-gnfZ#eVgfjyMrjw^)87zyHp)5s8f-49@ z5ImZSno2)bH&&t|?ByfzNo8a_eu|{?2xB;WtvoLKu@J8C*QAsW55)$*ZCm!<`i2^% zu{tO!{2I&VEXw6Ab1|IrUMc05;-lklWHOn*t*nUFt*EX$2&iqU=k@{=D&*uw<0tf}Xs0;Ey3Y9AypvHV{pd=0MN0WrCY||t*2r#4CR6umn%1o4laUjDgY&7jO7(YIS$}e z$8nyqZM%-ZZc#Yj2*9H#d@TTt2#%C8Mxd;ebcTV>GRB5DXO{qOF9|P8l?VK((*FTb W>3FYyvLe?20000jN>M)r6(RPMMCY=JEI4whAGA-mWKp-x*af)M-g6)_% zjw4&PWxb_ct@e5EJ?Hd~-IZ3>%C>CDX@4_kv~%x0=lp)(^LyVbv0~#rEEEYL2s&XR zvG}e?yx~E|33my@NCGG&af^imZmICh_}K81gQ@|m8V3!FIdI?q3UAf3ykzmQ3dJSnBWApFeA=RyErS^;8-hFx2? zZQI-RN84Gy{-(=5-`79H;s1V_pa1N?p3J0%AM)JNyz?|0nTf^i*EUlK4AaCkE$mRF zGZ3`b13khJ#FNck+jeaK$@?C>hgGYVqcxWu(P)H@jJ0u!gesbRf@7~#U_jbbJ(B!?-r_b(Ov2q!X9YoGScmUh6 z*|z-_P8@%AcRoA*ekB)P3+8SDLXc=|dF1~0-1}F5a^KxpmW9@Oax^p~F%4tdwYiLz zmS+0dNnj>4KNLpa3uE8ZMSb`q3rbb9q+^rIs3KN zoP4btw^%ru&u0ELpB;bFbKUfO?mH&{gblTk{t*;w^Icb2_8qY1Eq)g|Fg=8=oylw{OLaj?%xbv>t(CEE~5B(;c zNsT;xy=xkCouITrqYw06=toLE#1x0rwFdQ9P}O~AAQ#2cD+-G0aRy_+`PjP!3zrZyXO zbgbd<;op5UJv#W!>sjZj0SHB6o$ER}_P(RDgJe@2{{|N=mr}eTM$id$I-v+&sfd(5 z*P;ot0w9Dyh_Z_?EsIDj@r_NJ){{)e-}2M1(xy#sqma$)FBS6#-D2@*shB^Yq)aO% zuNsWH)u0dpCmc=Mp>UU0x-)1y+`6@M_nmiboo^Ygn}!C485|g4WHe28_l0ymoB391 zWZ;`_v2a!Wg=qj(YWU7jB)&Tmi|$;pqLpMKhH09tUEfBiCg=aZNTp(l*H6C5Z(lmr zlSvJ~Ka(20VnH=&0)e1IyrJolRX4To-nd~ct5z?c@v!vXTD!jzS*FQ`4R0eBjjTR+ z;N|^j?w-h`j$W>Yu%PVWlg%xAw{G9EtD~cxfE{?to!s@%vK33X#1yK)obU-jHlPrYZXXtHtVnsuv_iDU#Ry&KHp!qf7Vtz10c zv(qgWzF99kT9Ih{!Np5j@ZTb}S9oN_MY8nciWJhwBh3l4Q3P#Z$_9k82&!g6G!oOx zuxYsJ^_!YwgrkWEwbDm@&!tq%ACS^7x9YUU3OeDgSTclvgOi&HagH(L6mIY$Ms$E+ zBu~Ol;8;PT!3ee$MQcU6IDjX8QpMjhR?-YjG-DQ)5>ss~QkxK%m)$2Cjd0ucO=RIH0HWohhImPD3e34y0d z__}~pZn^(ptOqPC;V@Phqd(hA@Aw6VCXO*W_FEFA&9unPm)*0mIYDD{0s!BW$?op+ zyHCAptQsF1ddLE9SZX^MJj_JwFw2$-I+xtalE_k&&XM){=*zu`t1>9<`^O|h1_Omd3>JUKxOax49K*-M5GFzd5Lh6LvTX|!p{?@3 z!q+}|nPI{kVBGB`RqDky1FT7G20PD*!Y>JW%>@1CEAnLpOa}T>OU#DWwc|!0xT~o- zfl_LohvbdKcWA$~tt!9EVE9Th?hcbKU1W8vgN9H8 zfAD@zIR7?G8JU$g-m>IS-8dXnt#kA{6tEp?MdS9S{g3K{gJj?P(8&NyXo9+>!*^QvAy8I3FjW9Ae z^dmE|xEBbO;)1oHigX$*3#@=ZDp1P6Q!f3*v#g1|0|F&_M+b?x zZIv~q_)CxFIM>~qPK^xQS80lBe9s+lONC!djOW+;KC2DWz%UF1Q!0Tiy!p}VQids|l@Ksx%RClUcpvquq7#LJA zzLC#tdyI`O@8*SL2Pt|5!VyscO(2zGu-L=e*d|W-zfsxK%Z2blNKaBIx{QpBbMExH zp7hATeT7`MXGTXTXorZz5q1X z$LR`%9i*=*M7p!dJjpK6zOIrR2iNQu4BAeo);gX1)PH_vXUC4e2-v4^Rc@y6 z)l;X&-qnL}K$0jZb-MCo$! zQ+0M)!N8Cr&c?dJpB_Gj?UYY`5>1UE1{${2#pDt2AH~>iQDgW01B&JL9el9!vokjP zeebXN!SOvbED{v*Wx;(}b)Hi`MgbuavhzB-WkCTDus&i35<#=9ySifU)gu-)363i( zwyw&8moca~%Zl)YydpCi=UX5Cml=CyOKBe6_i=(jC=~Rxwe~Gl&DyG|YBhDOjElXBo>Ng0#U1pXSL6z1!BJD7 zjg4w`};;e@AzuR70Zd#b5OqZI}aTTlQrWe0bu`c3Ba3i^5# z3AK^`*ma7>KJWscdgpf;8`b0rx}3l$$Y(V&pWw@NynZ$D2|6`izoJ&t1fEt?=o#zO z(tMggL1{b`XycMgy&uKf&m-t@j1iy!KKmX~^;#fgeZ!KsGK8K+)JxGINl7={FSexU(4PtW6$yE3lGZvS_kA4C9LF%HG^;8&GXR(_ zyk!J2EL`A~di%~N06xh7kzQy_DQhyHpDc6~ELv>vV*mGN1)-ksPaS=X6T`p8vUOeO zI#oyL$pomD96JPpSAl_gd(JBWhTvB@SDg2yF{Pq4AxSA{TqHPjadr@DsXud$CywmF zvZtSVbzMDKMo(puwG=QNr0FW)8KCZazxf0}8^Y)tD~!LQRa6Tdm}UY}PsQqFli*cPm2J}B(j^B9)03cwPU+bS3I^$T2aEvHQR%(1%1wkV#*FrJD`P?x+`{R2# z)cq`nx}W8t+JgQ9*-_^Lq@?0YT!mO|Im&SOgq`N{B4kTy} zw~}RyoH6zya6d3neQy5;i!=CM5DfsZ4C6Z^h4gp(CPqmFml3s^kqV?#(~Bfo_7R2! z!7y0P+=N$J0)nKyh$WE~X`wtKxBfMV>)L zQy8BfDh`i&%KzlD&~g@sqoj(XOq9kcdihGz#6VZx2v-xFG62)#yDopJjz(jf4$)we zq_YUi3@|49$uN9e1o)yrJb$$eE;IlDBZe?PpYqauzLJkDwwIYr&Qiiw19@+Pf|sY@ z<|xQQrEU-v?U>5$s$^RsoIn`I3KI&%u#FI|DljbjDTwhGgem@3Am;SnW;X%=0N23S zla<*wN`7Fq;UUP8|wQ4<7H+^b+1G>6aWAN;|%b4Nf&=v z(#0(~J@Fn>1RgM?88>whQwt1iOkpCmLQ+Db@o|xcj}rciO87rRa6n+35ExhV^p~R> z4nUOz#%bWR7V2jnr6$mAi2N2ILEkPkaU+^OXqw bf2IEgWa%bYhy4G-00000NkvXXu0mjfu?W?0 literal 1301 zcmV+w1?u{VP)Px(&q+iRTzHH$GvxEcE*`a*Ze?DQ$kbemt|XMWl|_aNEW0~5*B^@ z2%`*?qA2@i^+Uo6#0nyi2#e?&k;vA5Y`U$c>854t&VIBrJ9qBa`FMNpnBnd=uz#e( z<#NuMbD#UZ&-*;@9fpW-83w-$m?`A{f@=YYB!keHSOb>sHr=C%0Z`heG}0RB#Hi6U zUOF5lQ6nX036c?(W{g&Zg6RZ6O3rAOLeuWVaFvd|j0=Q`noD}jTC3?!PovfJ7OmnG zG2KES^wEPg(*vTRSmIcDo_FDq3p?ZL%#ATZh>6C_fS~~bO$pJMD9T+}%cCeEYLYm< z2xJL#yjGjXOLbwO81(g5-`xF{<2X@J-}=nc#ezr7YNLr;qNWk)e-x=HE>--;&ZCDq zy9^UIueeQ083*-)2M%mpf4Ap|(xeQ55z7>{)`Tv{Fw_*6^4zt1&+?V4Vq}R0qcP(- zwMzB$Plwy4wBEaJEo$Y;lvcu}w~psmQAsIjx*F91r3}r72BVsF&y}q|RMtW7a4_6o zElcArT72DkUv-~65f8XNJL%~kJj37`NFHO&76A;a+@o* z#j0XzMBn6y1?8c0@kp$S{+!JG{G_&^UT#tK&71BEHRc7$XACZ4L!^#MBFA+pwR;|V z@`hXPK#2T0McJAag>vmsU-Z?i`Or2qswMo7--?yv)0fO!H8A*RK@YyNZClLbKO(;f zo=Sv3$sGh5g(0omrd&}O9tuZd2bGGjtLNLQx37KeU}4VTxO70acC;=0cjKc^DSp#`VkJ*!kJ!F1=44TlUe`4wr&OImR5^8YM`5oGgTlb14Nw?J=7XOj^-@ zz9$l=Yk>%=SD!lr!SJ4R-k+D2*;ZY??-vpRClF7!! z4U0+Aj+)9GT^r_)-nj41!t)O<-r+0%gO2UxtcmJ!y2)DOV2c)zpJ?AfXaU#GT{xrM zJM}LczyHHa?d=aNopJk~gAWhI+^6=F=t**c$FdZI(qyjDbsN|B{@t(|YYS#gyV74> z;S*P=#EZz*)4YYNmp#(xk6MhC88yQu-(%8A`l%3VV4(8&>l<+C z37_}Z2127CpPQVAX_H5m@7nUV2MVkcS(TB_r6D%Og#a)Mi4HvQ!hrAm;>E*#`vFQt zZls!e(~?`)t=Lp_42A|x9`h9erHSDx@Esp1IMhN*kWgoX4wOO&9aG3r{zNIcNQ7Xs zz-ckTcrgiC$e>8a1^9r}R}kp4;pQ1J#57o`HHeIFkW0*s(Qi{8sH>#`Bmr<298Nwp zz$r=r5!0FU9WqhCEjZMAxv`9Vb;)SXZ*!qc Pause.) + +.. image:: images/icon-offline.png + +The gray icon with three white dots means your sync client has lost its +connection with your ownCloud server. + +.. image:: images/icon-information.png + +When you see a white circle with the letter "i" that is the informational icon, +so you should click it to see what it has to tell you. + +.. image:: images/icon-error.png + +The red circle with the white "x" indicates a configuration error, such as an +incorrect login or server URL. Using the Desktop Client Menu ----------------------------- @@ -24,10 +52,17 @@ following menu: The Desktop Client menu provides the following options: * ``Open ownCloud in browser``: Launches the ownCloud WEB interface. -* ``Open folder 'ownCloud'``: Opens the ownCloud local folder. If you have defined multiple synchronization targets, the window displays each local folder. -* **Disk space indicator**: Indicates the amount of space currently used on the server. -* Operation indicator: Displays the status of the current synchronization process or indicates ``Up to date`` if the server and client are in sync. -* **Recent Changes**: Displays the last six files modified by the synchronization operations and provides access to the current synchronization status listing all changes since the last restart of the ownCloud client. +* ``Open folder 'ownCloud'``: Opens the ownCloud local folder. If you have + defined multiple synchronization targets, the window displays each local + folder. +* **Disk space indicator**: Indicates the amount of space currently used on the + server. +* Operation indicator: Displays the status of the current synchronization + process or indicates ``Up to date`` if the server and client are in sync. +* **Recent Changes**: Displays the last six files modified by the + synchronization operations and provides access to the current + synchronization status listing all changes since the last restart of the + ownCloud client. * ``Settings...``: Provides access to the settings menu. * ``Help``: Opens a browser to display ownCloud Desktop Client Guide. * ``Sign out``: Disables the client from continued synchronizations. @@ -39,7 +74,9 @@ Using the Account Settings Window .. index:: account settings, user, password, Server URL -The ``Account`` window provides a summary for general settings associated with the ownCloud account. This window enalbes you to manage any synchronized folders in the account and enables you to modify them. +The ``Account`` window provides a summary for general settings associated with +the ownCloud account. This window enalbes you to manage any synchronized +folders in the account and enables you to modify them. To access and modify the account settings: @@ -48,25 +85,37 @@ To access and modify the account settings: The fields and options in this window include: -* ``Connected to as `` field: Indicates the ownCloud server to which the client is synchronizing and the user account on that server. +* ``Connected to as `` field: Indicates the ownCloud + server to which the client is synchronizing and the user account on that + server. -* ``Add Folder...`` button: Provides the ability to add another folder to the synchronization process (see ``Adding a Folder``). +* ``Add Folder...`` button: Provides the ability to add another folder to the + synchronization process (see ``Adding a Folder``). -* ``Pause/Resume`` button: Pauses the current sync (or prevents the client from starting a new sync) or resumes the sync process. +* ``Pause/Resume`` button: Pauses the current sync (or prevents the client from + starting a new sync) or resumes the sync process. -* ``Remove`` button: Removes the selected folder from the sync process. This button is used when you want to synchronize only a few folders and not the root folder. If only the root folder is available, you must first remove the root from the synchronization and then add individual folders that you want to synchronize as desired. +* ``Remove`` button: Removes the selected folder from the sync process. This + button is used when you want to synchronize only a few folders and not the + root folder. If only the root folder is available, you must first remove the + root from the synchronization and then add individual folders that you want + to synchronize as desired. -* ``Storage Usage`` field: Indicates the storage utilization on the ownCloud server. +* ``Storage Usage`` field: Indicates the storage utilization on the ownCloud + server. * ``Edit Ignored Files`` button: Launches the Ignored Files Editor. -* ``Modify Account`` button: Enables you to change the ownCloud server to which you are synchronizing. This option launches the ``Setting up an Account`` windows (See ??). +* ``Modify Account`` button: Enables you to change the ownCloud server to which + you are synchronizing. This option launches the ``Setting up an Account`` + dialog (see :doc:`accountsetup`). Adding a Folder ^^^^^^^^^^^^^^^ -The ``Add a Folder ...`` button enables you to add a new folder to the syncrhonization process. +The ``Add a Folder ...`` button enables you to add a new folder to the +syncrhonization process. To add a new folder: @@ -74,37 +123,35 @@ To add a new folder: The ``Add Folder...`` window opens - .. image:: images/folderwizard_local.png - :scale: 50 % +.. image:: images/folderwizard_local.png - **``Add Folder...`` window (local folder)** +2. Specify a *unique* path and alias name to the folder or use the ``Choose...`` + button to locate the new folder on your system to which you want to + synchronize. -2. Specify a *unique* path and alias name to the folder or use the ``Choose...`` button to locate the new folder on your system to which you want to synchronize. - - ..note:: Nested synchronizations are not supported. In other words, you +.. note:: Nested synchronizations are not supported. In other words, you cannot add a folder that is already contained within another synchronized folder. In addition, you cannot add a higher level (parent) folder that contains a folder to which you are already synchronizing. By default, the ownCloud Set Up Wizard syncrhonizes your entire ownCloud account to the root - folder of the ownCloud server. Due to this default setup, you must first remove - the top-level folder prior to specifying new synchronizations. + folder of the ownCloud server. Due to this default setup, you must first + remove the top-level folder prior to specifying new synchronizations. 3. Click 'Next' to continue. A window opens prompting you to select a remote destination folder on the ownCloud server to which you want to synchronize. - .. image:: images/folderwizard_remote.png - :scale: 50 % +.. image:: images/folderwizard_remote.png - **``Add Folder...`` window (remote destination)** +4. Select a folder on the ownCloud server to which you want to synchronize your +newly added folder. -4. Select a folder on the ownCloud server to which you want to synchronize your newly added folder. - - ..note:: A server folder can only be synchronized with a particular client once. - If you attempt to sync the root directory, you cannot sync with other folders - on the server. Similarly, if you sync with folder ``/a``, you cannot create - another sync with ``/a/b``, since ``b`` is already being synched. +..note:: A server folder can only be synchronized with a particular client + once. If you attempt to sync the root directory, you cannot sync with + other folders on the server. Similarly, if you sync with folder ``/a``, you + cannot create another sync with ``/a/b``, since ``b`` is already being + synched. Editing Ignored Files ^^^^^^^^^^^^^^^^^^^^^ @@ -117,7 +164,8 @@ In addition to using standard characters, the Ignored Files Editor enables you to use wild cards (for example, using an asterisk ‘*’ to indicate multiple characters or a question mark ‘?’ to incidate a single character). -For additional information about this editor, see `Using the Ignored Files Editor`_ +For additional information about this editor, see `Using the Ignored Files +Editor`_ Using the Activity Settings Window ---------------------------------- @@ -131,9 +179,6 @@ manner due to containing special characters that cannot be stored on certain file systems. .. image:: images/settings_activity.png - :scale: 50 % - - **Activity settings window** You can open the Activity window in one of the following ways: @@ -152,9 +197,6 @@ ownCloud Desktop Client and provides information about the software version, its creator, and the existance of any updates. .. image:: images/settings_general.png - :scale: 50 % - - **General settings window** The settings and information contained in this window are as follows: @@ -170,12 +212,13 @@ The settings and information contained in this window are as follows: * ``Use Monochrome Icons`` checkbox: Provides the option to check (enable) or uncheck (disable) the use of monochrome (visually less obtrusive) icons. - .. note:: This option can be useful on MAC OSX platforms. +.. note:: This option can be useful on MAC OSX platforms. * ``About`` field: Provides information about the software authors along with pertinent build conditions. - .. note:: Information in this field can be valuable when submitting a support request. +.. note:: Information in this field can be valuable when submitting a support + request. * ``Updates`` field: Provides information about any available updates for the ownCloud Desktop Client. @@ -190,9 +233,6 @@ well as limit the download and upload bandwidth utilization of file synchronizations. .. image:: images/settings_network.png - :scale: 50 % - - **Network settings window** Specifying Proxy Settings ^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -202,20 +242,27 @@ that functions as an intermediary contact for requests from clients that are seeking resources from other servers. For the ownCloud Desktop Client, you can define the following proxy settings: -* ``No Proxy`` option: Specifies that the ownCloud Client circumvent the default proxy configured on the system. +* ``No Proxy`` option: Specifies that the ownCloud Client circumvent the default + proxy configured on the system. * ``Use system proxy`` option: Default setting. Follows the systems proxy settings. On Linux systems, this setting uses the value of the variable ``http_proxy``. * ``Specify proxy manually as`` option: Enables you to specify the following custom proxy settings: - - ``HTTP(S)``: Used when you are required to use an HTTP(S) proxy server (for example, Squid or Microsoft Forefront TMG). - - ``SOCKSv5``: Typically used in special company LAN setups, or in combination with the OpenSSH + - ``HTTP(S)``: Used when you are required to use an HTTP(S) proxy server (for + example, Squid or Microsoft Forefront TMG). + - ``SOCKSv5``: Typically used in special company LAN setups, or in combination + with the OpenSSH dynamic application level forwarding feature (see ``ssh -D``). - - ``Host``: Host name or IP address of the proxy server along with the port number. HTTP proxies - typically listen over Ports 8080 (default) or 3128. SOCKS servers typically listen over port 1080. -* ``Proxy Server requires authentication`` checkbox: Provides the option to check (enable/require) or - uncheck (disable/not require) proxy server authentication. When not checked, the proxy server must - be configured to allow anonymous usage. When checked, a proxy server username and password is required. + - ``Host``: Host name or IP address of the proxy server along with the port + number. HTTP proxies typically listen over Ports 8080 (default) or 3128. + SOCKS servers typically listen over port 1080. +* ``Proxy Server requires authentication`` checkbox: Provides the option to + check (enable/require) or + uncheck (disable/not require) proxy server authentication. When not checked, + the proxy server must + be configured to allow anonymous usage. When checked, a proxy server username + and password is required. Bandwidth Limiting ^^^^^^^^^^^^^^^^^^ @@ -265,13 +312,10 @@ can use the *Ignored Files Editor* that is embedded in the ownCloud Desktop Client. .. image:: images/ignored_files_editor.png - :scale: 50% - Ignored Files Editor window - -The :guilabel:`Ignored Files Editor` enables you to define customized patterns that the -ownCloud Client uses to identify files and directories that you want to exclude -from the synchronization process. For your convenience, the editor is +The ``Ignored Files Editor`` enables you to define customized patterns +that the ownCloud Client uses to identify files and directories that you want +to exclude from the synchronization process. For your convenience, the editor is pre-populated with a default list of typically ignore patterns. These patterns are contained in a system file (typically ``sync-exclude.lst``) located in the ownCloud Client application directory. You cannot modify these pre-populated From b5da8423a664094eb5b2b0a81f6502c0f566738f Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 22 Oct 2014 19:24:19 -0700 Subject: [PATCH 02/87] Update navigating.rst --- doc/navigating.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/navigating.rst b/doc/navigating.rst index be080a1a8..6fa12b225 100644 --- a/doc/navigating.rst +++ b/doc/navigating.rst @@ -10,7 +10,7 @@ system tray (Windows, KDE), status bar (MAC OS X), or notification area .. image:: images/icon.png This is a status indicator which uses overlay icons to indicate the -current status of your synchronization. The green circle with the white arrow +current status of your synchronization. The green circle with the white checkmark tells you that your synchronization is current and you are connected to your ownCloud server. From 96a7118d05ada8eca1eaee06d76a93cf02f21761 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Thu, 6 Nov 2014 00:36:04 +0100 Subject: [PATCH 03/87] WiP: switch to ReadDirectoryChangesW --- src/mirall/folderwatcher_win.cpp | 87 ++++++++++++++++++++------------ 1 file changed, 54 insertions(+), 33 deletions(-) diff --git a/src/mirall/folderwatcher_win.cpp b/src/mirall/folderwatcher_win.cpp index c6c8242fa..b4b8f7fdc 100644 --- a/src/mirall/folderwatcher_win.cpp +++ b/src/mirall/folderwatcher_win.cpp @@ -25,42 +25,63 @@ namespace Mirall { void WatcherThread::run() { - _handle = FindFirstChangeNotification((wchar_t*)_path.utf16(), - true, // recursive watch - FILE_NOTIFY_CHANGE_FILE_NAME | - FILE_NOTIFY_CHANGE_DIR_NAME | - FILE_NOTIFY_CHANGE_LAST_WRITE); - - if (_handle == INVALID_HANDLE_VALUE) - { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification function failed, stopping watcher!"; - FindCloseChangeNotification(_handle); - _handle = 0; - return; - } - - if (_handle == NULL) - { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned null, stopping watcher!"; - FindCloseChangeNotification(_handle); - _handle = 0; - return; - } + _handle = CreateFileW( + (wchar_t*)_path.utf16(), + FILE_LIST_DIRECTORY, + FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE, + NULL, + OPEN_EXISTING, + FILE_FLAG_BACKUP_SEMANTICS, + NULL + ); + size_t bufsize = 4096; + size_t maxlen = 4096; while(true) { - switch(WaitForSingleObject(_handle, /*wait*/ INFINITE)) { - case WAIT_OBJECT_0: - if (FindNextChangeNotification(_handle) == false) { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned FALSE, stopping watcher!"; - FindCloseChangeNotification(_handle); - _handle = 0; - return; + char fileNotify[bufsize]; + // TODO: handle CreateFileW failure + FILE_NOTIFY_INFORMATION *pFileNotify = + (FILE_NOTIFY_INFORMATION*)fileNotify; + DWORD dwBytesReturned = 0; + SecureZeroMemory(pFileNotify, bufsize); + if(ReadDirectoryChangesW( _handle, (LPVOID)pFileNotify, + bufsize, true, + FILE_NOTIFY_CHANGE_LAST_WRITE | + FILE_NOTIFY_CHANGE_DIR_NAME | + FILE_NOTIFY_CHANGE_LAST_WRITE, + &dwBytesReturned, NULL, NULL)) + { + FILE_NOTIFY_INFORMATION *curEntry = pFileNotify; + while(true) { + size_t len = pFileNotify->FileNameLength / 2; + QString file = _path + "\\" + QString::fromWCharArray(pFileNotify->FileName, len); + + QScopedArrayPointer buffer(new TCHAR[maxlen]); + if (GetLongPathNameW(reinterpret_cast(file.utf16()), buffer.data(), maxlen) == 0) { + qDebug() << "Error converting file name to full length"; + } + const QString longfile = QString::fromUtf16(reinterpret_cast(buffer.data()), maxlen-1); + + qDebug() << Q_FUNC_INFO << "Found change in" << file; + emit changed(longfile); + if (curEntry->NextEntryOffset == 0) { + break; + } + curEntry = (FILE_NOTIFY_INFORMATION*) + (char*)curEntry + curEntry->NextEntryOffset; + } + } else { + switch(GetLastError()) { + case ERROR_NOTIFY_ENUM_DIR: + qDebug() << Q_FUNC_INFO << "Too many events for buffer, resizing"; + bufsize *= 2; + break; + default: + qDebug() << Q_FUNC_INFO << "General error while watching. Exiting."; + CloseHandle(_handle); + _handle = NULL; + break; } - // qDebug() << Q_FUNC_INFO << "Change detected in" << _path << "from" << QThread::currentThread (); - emit changed(_path); - break; - default: - qDebug() << Q_FUNC_INFO << "Error while watching"; } } } From 89670e5ce4f7155118548a37db56c84e10bcef25 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Thu, 6 Nov 2014 12:54:33 +0100 Subject: [PATCH 04/87] Folderwatcher_win: handle conversion error --- src/mirall/folderwatcher_win.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/mirall/folderwatcher_win.cpp b/src/mirall/folderwatcher_win.cpp index b4b8f7fdc..628775472 100644 --- a/src/mirall/folderwatcher_win.cpp +++ b/src/mirall/folderwatcher_win.cpp @@ -56,11 +56,14 @@ void WatcherThread::run() size_t len = pFileNotify->FileNameLength / 2; QString file = _path + "\\" + QString::fromWCharArray(pFileNotify->FileName, len); + QString longfile; QScopedArrayPointer buffer(new TCHAR[maxlen]); if (GetLongPathNameW(reinterpret_cast(file.utf16()), buffer.data(), maxlen) == 0) { - qDebug() << "Error converting file name to full length"; + qDebug() << Q_FUNC_INFO << "Error converting file name to full length, resorting to original name."; + longfile = file; + } else { + longfile = QString::fromUtf16(reinterpret_cast(buffer.data()), maxlen-1); } - const QString longfile = QString::fromUtf16(reinterpret_cast(buffer.data()), maxlen-1); qDebug() << Q_FUNC_INFO << "Found change in" << file; emit changed(longfile); From 08868594ae510318fc06c0554fced2ed2d2470f4 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Fri, 7 Nov 2014 01:25:32 -0500 Subject: [PATCH 05/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 79 ++++++++++++---------- translations/mirall_cs.ts | 84 ++++++++++++----------- translations/mirall_de.ts | 95 ++++++++++++++------------ translations/mirall_el.ts | 83 ++++++++++++----------- translations/mirall_en.ts | 80 +++++++++++++--------- translations/mirall_es.ts | 83 ++++++++++++----------- translations/mirall_es_AR.ts | 79 ++++++++++++---------- translations/mirall_et.ts | 83 ++++++++++++----------- translations/mirall_eu.ts | 79 ++++++++++++---------- translations/mirall_fa.ts | 77 ++++++++++++--------- translations/mirall_fi.ts | 77 ++++++++++++--------- translations/mirall_fr.ts | 83 ++++++++++++----------- translations/mirall_gl.ts | 125 +++++++++++++++++++---------------- translations/mirall_hu.ts | 77 ++++++++++++--------- translations/mirall_it.ts | 83 ++++++++++++----------- translations/mirall_ja.ts | 82 +++++++++++++---------- translations/mirall_nl.ts | 83 ++++++++++++----------- translations/mirall_pl.ts | 79 ++++++++++++---------- translations/mirall_pt.ts | 83 ++++++++++++----------- translations/mirall_pt_BR.ts | 79 ++++++++++++---------- translations/mirall_ru.ts | 84 ++++++++++++----------- translations/mirall_sk.ts | 79 ++++++++++++---------- translations/mirall_sl.ts | 85 +++++++++++++----------- translations/mirall_sv.ts | 79 ++++++++++++---------- translations/mirall_th.ts | 77 ++++++++++++--------- translations/mirall_tr.ts | 83 ++++++++++++----------- translations/mirall_uk.ts | 79 ++++++++++++---------- translations/mirall_zh_CN.ts | 77 ++++++++++++--------- translations/mirall_zh_TW.ts | 77 ++++++++++++--------- 29 files changed, 1343 insertions(+), 1050 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index fff6dd6cf..93e744aed 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -386,12 +386,12 @@ Temps restant total %5 Activitat de sincronització - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Això podria ser perquè la carpeta ha estat reconfigurada silenciosament, o que Esteu segur que voleu executar aquesta operació? - + Remove All Files? Esborra tots els fitxers? - + Remove all files Esborra tots els fitxers - + Keep files Mantén els fitxers @@ -1306,27 +1306,27 @@ No és aconsellada usar-la. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. L'usuari ha aturat la sincronització. - + No E-Tag received from server, check Proxy/Gateway No s'ha rebut cap E-Tag del servidor, comproveu el Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. hem rebut un E-Tag diferent en la represa. Es comprovarà la pròxima vegada. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! @@ -1425,18 +1425,18 @@ No és aconsellada usar-la. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely El fitxer local ha canviat durant la sincronització, es sincronitzarà quan arribi complet - + Sync was aborted by user. L'usuari ha aturat la sincronització. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El fitxer s'ha editat localment però és part d'una compartició només de lectura. S'ha restaurat i la vostra edició és en el fitxer conflictiu. @@ -1538,16 +1538,27 @@ No és aconsellada usar-la. L'estat de sincronització s'ha copiat al porta-retalls. - - Currently no files are ignored because of previous errors. - Actualment no s'ha ignorat cap fitxer a causa d'errors anteriors. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2047,69 +2058,69 @@ No és aconsellada usar-la. El fitxer conté caràcters no vàlids que no es poden sincronitzar entre plataformes. - + Unable to initialize a sync journal. No es pot inicialitzar un periòdic de sincronització - + Cannot open the sync journal No es pot obrir el diari de sincronització - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory No es permet perquè no teniu permisos per afegir subcarpetes en aquesta carpeta - + Not allowed because you don't have permission to add parent directory No es permet perquè no teniu permisos per afegir una carpeta inferior - + Not allowed because you don't have permission to add files in that directory No es permet perquè no teniu permisos per afegir fitxers en aquesta carpeta - + Not allowed to upload this file because it is read-only on the server, restoring No es permet pujar aquest fitxer perquè només és de lectura en el servidor, es restaura - - + + Not allowed to remove, restoring No es permet l'eliminació, es restaura - + Local files and share folder removed. Fitxers locals i carpeta compartida esborrats. - + Move not allowed, item restored No es permet moure'l, l'element es restaura - + Move not allowed because %1 is read-only No es permet moure perquè %1 només és de lectura - + the destination el destí - + the source l'origen diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index f331fea6e..8a4ca1242 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -386,12 +386,12 @@ Celkový zbývající čas %5 Průběh synchronizace - + Could not read system exclude file Nezdařilo se přečtení systémového exclude souboru - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto může být způsobeno změnou v nastavení synchronizace složky nebo tím Opravdu chcete provést tuto akci? - + Remove All Files? Odstranit všechny soubory? - + Remove all files Odstranit všechny soubory - + Keep files Ponechat soubory @@ -1306,27 +1306,27 @@ Nedoporučuje se jí používat. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizace zrušena uživatelem. - + No E-Tag received from server, check Proxy/Gateway Ze serveru nebyl obdržen E-Tag, zkontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Obdrželi jsme jiný E-Tag pro pokračování. Zkusím znovu příště. - + Server returned wrong content-range Server odpověděl chybným rozsahem obsahu - + File %1 can not be downloaded because of a local file name clash! Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému! @@ -1425,18 +1425,18 @@ Nedoporučuje se jí používat. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Místní soubor byl změněn během synchronizace, bude sesynchronizován, jakmile bude kompletní - + Sync was aborted by user. Synchronizace zrušena uživatelem. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Soubor zde byl editován, ale je součástí sdílení pouze pro čtení. Původní soubor byl obnoven a editovaná verze je uložena v konfliktním souboru. @@ -1538,18 +1538,26 @@ Nedoporučuje se jí používat. Stav synchronizace byl zkopírován do schránky. - - Currently no files are ignored because of previous errors. - Nyní nejsou v seznamu ignorovaných žádné soubory kvůli předchozím chybám. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n soubor je ignorován kvůli předchozím chybovým hlášením. -Zkuste ho znovu synchronizovat.%n soubory jsou ignorovány kvůli předchozím chybovým hlášením. -Zkuste je znovu synchronizovat.%n souborů je ignorováno kvůli předchozím chybovým hlášením. -Zkuste je znovu synchronizovat. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2050,69 +2058,69 @@ Zkuste je znovu synchronizovat. Soubor obsahuje alespoň jeden neplatný znak, který narušuje synchronizaci v prostředí více platforem. - + Unable to initialize a sync journal. Nemohu inicializovat synchronizační žurnál. - + Cannot open the sync journal Nelze otevřít synchronizační žurnál - - + + Ignored because of the "choose what to sync" blacklist Ignorováno podle nastavení "vybrat co synchronizovat" - + Not allowed because you don't have permission to add sub-directories in that directory Není povoleno, protože nemáte oprávnění vytvářet podadresáře v tomto adresáři. - + Not allowed because you don't have permission to add parent directory Není povoleno, protože nemáte oprávnění vytvořit rodičovský adresář - + Not allowed because you don't have permission to add files in that directory Není povoleno, protože nemáte oprávnění přidávat soubory do tohoto adresáře - + Not allowed to upload this file because it is read-only on the server, restoring Není povoleno nahrát tento soubor, protože je na serveru uložen pouze pro čtení, obnovuji - - + + Not allowed to remove, restoring Odstranění není povoleno, obnovuji - + Local files and share folder removed. Místní soubory a sdílený adresář byly odstraněny. - + Move not allowed, item restored Přesun není povolen, položka obnovena - + Move not allowed because %1 is read-only Přesun není povolen, protože %1 je pouze pro čtení - + the destination cílové umístění - + the source zdroj diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index b6572315e..36c74d922 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -387,12 +387,12 @@ Gesamtzeit übrig %5 Synchronisierungsaktivität - + Could not read system exclude file Systemeigene Ausschlussdatei kann nicht gelesen werden - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Vielleicht wurde der Ordner neu konfiguriert, oder alle Dateien wurden händisch Sind Sie sicher, dass sie diese Operation durchführen wollen? - + Remove All Files? Alle Dateien löschen? - + Remove all files Lösche alle Dateien - + Keep files Dateien behalten @@ -461,7 +461,7 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Setup Error. - Setup-Fehler. + Installationsfehler. @@ -744,7 +744,7 @@ Aktivierte Elemente werden ebenfalls gelöscht, wenn diese das Löschen eines Ve Could not open file - Konnte Datei nicht öffnen + Datei konnte nicht geöffnet werden @@ -840,7 +840,7 @@ Aktivierte Elemente werden ebenfalls gelöscht, wenn diese das Löschen eines Ve <nobr>File '%1'<br/>cannot be opened for writing.<br/><br/>The log output can <b>not</b> be saved!</nobr> - <nobr>Datei '%1'<br/>kann nicht zum Schreiben geöffnet werden.<br/><br/>Die Protokolldatei kann <b>nicht</b> gespeichert werden!</nobr> + <nobr>Datei »%1«<br/>kann nicht zum Schreiben geöffnet werden.<br/><br/>Die Protokolldatei kann <b>nicht</b> gespeichert werden!</nobr> @@ -1252,7 +1252,7 @@ Es ist nicht ratsam, diese zu benutzen. Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - Kann den Ordner nicht entfernen und sichern, da der Ordner oder einer seiner Dateien in einem anderen Programm geöffnet ist. Bitte schließen Sie den Ordner ode die Datei oder beenden Sie das Setup. + Der Ordner kann nicht entfernt und gesichert werden, da der Ordner oder einer seiner Dateien in einem anderen Programm geöffnet ist. Bitte schließen Sie den Ordner oder die Datei oder beenden Sie die Installation. @@ -1307,27 +1307,27 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronisation wurde durch den Nutzer abgebrochen. - + No E-Tag received from server, check Proxy/Gateway Kein E-Tag vom Server empfangen, bitte Proxy / Gateway überprüfen - + We received a different E-Tag for resuming. Retrying next time. Es wurde ein unterschiedlicher E-Tag zum Fortfahren empfangen. Bitte beim nächsten mal nochmal versuchen. - + Server returned wrong content-range Server hat falschen Bereich für den Inhalt zurück gegeben - + File %1 can not be downloaded because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! @@ -1426,18 +1426,18 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Eine lokale Datei wurde während der Synchronisation geändert, synchronisieren Sie nochmals sobald die aktuelle Datei vollständig angekommen ist - + Sync was aborted by user. Synchronisation wurde durch den Nutzer abgebrochen. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Die Datei wurde von einer Nur-Lese-Freigabe lokal bearbeitet. Die Datei wurde wiederhergestellt und Ihre Bearbeitung ist in der Konflikte-Datei. @@ -1539,17 +1539,26 @@ Es ist nicht ratsam, diese zu benutzen. Der Synchronisationsstatus wurde in die Zwischenablage kopiert. - - Currently no files are ignored because of previous errors. - Aktuell werden keine Dateien, aufgrund vorheriger Fehler, ignoriert. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n Datei wurde aufgrund eines vorherigen Fehlers ignoriert. -Versuchen Sie diese nochmals zu synchronisieren.%n Dateien werden aufgrund vorheriger Fehler ignoriert. -Versuchen Sie diese nochmals zu synchronisieren. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2050,69 +2059,69 @@ Versuchen Sie diese nochmals zu synchronisieren. Die Datei beinhaltet ungültige Zeichen und kann nicht plattformübergreifend synchronisiert werden. - + Unable to initialize a sync journal. Synchronisationsbericht konnte nicht initialisiert werden. - + Cannot open the sync journal Synchronisationsbericht kann nicht geöffnet werden - - + + Ignored because of the "choose what to sync" blacklist Aufgrund der »Zu synchronisierende Elemente auswählen«-Sperrliste ignoriert - + Not allowed because you don't have permission to add sub-directories in that directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Unterordnern haben - + Not allowed because you don't have permission to add parent directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Hauptordnern haben - + Not allowed because you don't have permission to add files in that directory Nicht erlaubt, da Sie keine Rechte zum Hinzufügen von Dateien in diesen Ordner haben - + Not allowed to upload this file because it is read-only on the server, restoring Das Hochladen dieser Datei ist nicht erlaubt, da die Datei auf dem Server schreibgeschützt ist, Wiederherstellung - - + + Not allowed to remove, restoring Löschen nicht erlaubt, Wiederherstellung - + Local files and share folder removed. Lokale Dateien und Freigabeordner wurden entfernt. - + Move not allowed, item restored Verschieben nicht erlaubt, Element wiederhergestellt - + Move not allowed because %1 is read-only Verschieben nicht erlaubt, da %1 schreibgeschützt ist - + the destination Das Ziel - + the source Die Quelle @@ -2183,7 +2192,7 @@ Versuchen Sie diese nochmals zu synchronisieren. Open folder '%1' - Ordner '%1' öffnen + Ordner »%1« öffnen @@ -2641,7 +2650,7 @@ Versuchen Sie diese nochmals zu synchronisieren. Setup Error - Setup-Fehler + Installationsfehler diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 670822226..ea6b7d2a8 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -387,12 +387,12 @@ Total time left %5 Δραστηριότητα Συγχρονισμού - + Could not read system exclude file Αδυναμία ανάγνωσης αρχείου αποκλεισμού συστήματος - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Are you sure you want to perform this operation? Είστε σίγουροι ότι θέλετε να εκτελέσετε αυτή τη λειτουργία; - + Remove All Files? Αφαίρεση Όλων των Αρχείων; - + Remove all files Αφαίρεση όλων των αρχείων - + Keep files Διατήρηση αρχείων @@ -1307,27 +1307,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Ο συγχρονισμός ματαιώθηκε από τον χρήστη. - + No E-Tag received from server, check Proxy/Gateway Δεν ελήφθη E-Tag από τον διακομιστή, ελέγξτε τον διακομιστή μεσολάβησης/πύλη - + We received a different E-Tag for resuming. Retrying next time. Ελήφθη διαφορετικό E-Tag για συνέχιση. Επανάληψη την επόμενη φορά. - + Server returned wrong content-range Ο διακομιστής επέστρεψε εσφαλμένο πεδίο τιμών - + File %1 can not be downloaded because of a local file name clash! Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! @@ -1426,18 +1426,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Το τοπικό αρχείο τροποποιήθηκε κατά τη διάρκεια του συγχρονισμού, θα συγχρονιστεί και πάλι όταν φτάσει πλήρως - + Sync was aborted by user. Ο συγχρονισμός ματαιώθηκε από τον χρήστη. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και το επεξεργασμένο βρίσκεται στο αρχείο συγκρούσεων. @@ -1539,17 +1539,26 @@ It is not advisable to use it. Η κατάσταση συγχρονισμού αντιγράφηκε στο πρόχειρο. - - Currently no files are ignored because of previous errors. - Προς το παρόν κανένα αρχείο δεν θα αγνοηθεί λόγω προηγούμενων σφαλμάτων. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n αρχείο αγνοήθηκε λόγω προηγούμενων σφαλμάτων. -Προσπαθείστε να τα συγχρονίσετε ξανά.%n αρχεία αγνοήθηκαν λόγω προηγούμενων σφαλμάτων. -Προσπαθείστε να τα συγχρονίσετε ξανά. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2050,69 +2059,69 @@ It is not advisable to use it. Το αρχείο περιέχει άκυρους χαρακτήρες που δεν μπορούν να συγχρονιστούν σε όλα τα συστήματα. - + Unable to initialize a sync journal. Αδυναμία προετοιμασίας αρχείου συγχρονισμού. - + Cannot open the sync journal Αδυναμία ανοίγματος του αρχείου συγχρονισμού - - + + Ignored because of the "choose what to sync" blacklist Αγνοήθηκε εξαιτίας της μαύρης λίστας "διάλεξε τι να συγχρονιστεί" - + Not allowed because you don't have permission to add sub-directories in that directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε υπο-καταλόγους σε αυτό τον κατάλογο - + Not allowed because you don't have permission to add parent directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε στο γονεϊκό κατάλογο - + Not allowed because you don't have permission to add files in that directory Δεν επιτρέπεται επειδή δεν έχεται δικαιώματα να προσθέσετε αρχεία σε αυτόν τον κατάλογο - + Not allowed to upload this file because it is read-only on the server, restoring Δεν επιτρέπεται να μεταφορτώσετε αυτό το αρχείο επειδή είναι μόνο για ανάγνωση στο διακομιστή, αποκατάσταση σε εξέλιξη - - + + Not allowed to remove, restoring Δεν επιτρέπεται η αφαίρεση, αποκατάσταση σε εξέλιξη - + Local files and share folder removed. Οι τοπικοί φάκελοι και ο φάκελος κοινής χρήσης αφαιρέθηκαν. - + Move not allowed, item restored Η μετακίνηση δεν επιτρέπεται, το αντικείμενο αποκαταστάθηκε - + Move not allowed because %1 is read-only Η μετακίνηση δεν επιτρέπεται επειδή το %1 είναι μόνο για ανάγνωση - + the destination ο προορισμός - + the source η προέλευση diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 735f443a0..7c7cc4f1d 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -387,29 +387,29 @@ Total time left %5 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1301,27 +1301,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1420,18 +1420,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1533,19 +1533,33 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2043,69 +2057,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 382c6b290..7fc189346 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -386,12 +386,12 @@ Tiempo restante %5 Actividad en la Sincronización - + Could not read system exclude file No se pudo leer el archivo de exclusión del sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Esto se puede deber a que la carpeta fue reconfigurada de forma silenciosa o a q Está seguro de que desea realizar esta operación? - + Remove All Files? Eliminar todos los archivos? - + Remove all files Eliminar todos los archivos - + Keep files Conservar archivos @@ -1306,27 +1306,27 @@ No se recomienda usarlo. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. La sincronización ha sido Interrumpida por el usuario - + No E-Tag received from server, check Proxy/Gateway No se recibió ninguna e-tag del servidor, revisar el proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Se recibió una e-tag distinta para reanudar. Se intentará nuevamente. - + Server returned wrong content-range El servidor devolvió un content-range erróneo - + File %1 can not be downloaded because of a local file name clash! ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! @@ -1425,18 +1425,18 @@ No se recomienda usarlo. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Fichero local modificado mientras se sincronizaba, sincronice otra vez cuando termine de editar - + Sync was aborted by user. La sincronización ha sido Interrumpida por el usuario - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El archivo fue modificado localmente, pero es parte de una carpeta compartida en modo de solo lectura. Ha sido recuperado y tu modificación está en el archivo de conflicto. @@ -1538,17 +1538,26 @@ No se recomienda usarlo. El informe de sincronización fue copiado al portapapeles. - - Currently no files are ignored because of previous errors. - Actualmente no hay ficheros ignorados por errores previos. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n archivo ha sido ignorado por causa de errores previos. - Intente volver a sincronizarlo.%n archivos han sido ignorados por causa de errores previos. - Intente volver a sincronizarlos. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2049,69 +2058,69 @@ No se recomienda usarlo. El fichero contiene caracteres inválidos que no pueden ser sincronizados con la plataforma. - + Unable to initialize a sync journal. No se pudo inicializar un registro (journal) de sincronización. - + Cannot open the sync journal No es posible abrir el diario de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado por que se encuentra en la lista negra de "elige que vas a sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory No está permitido, porque no tiene permisos para añadir subcarpetas en este directorio. - + Not allowed because you don't have permission to add parent directory No está permitido porque no tiene permisos para añadir un directorio - + Not allowed because you don't have permission to add files in that directory No está permitido, porque no tiene permisos para crear archivos en este directorio - + Not allowed to upload this file because it is read-only on the server, restoring No está permitido subir este archivo porque es de solo lectura en el servidor, restaurando. - - + + Not allowed to remove, restoring No está permitido borrar, restaurando. - + Local files and share folder removed. Se eliminaron los archivos locales y la carpeta compartida. - + Move not allowed, item restored No está permitido mover, elemento restaurado. - + Move not allowed because %1 is read-only No está permitido mover, porque %1 es solo lectura. - + the destination destino - + the source origen diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index 2c8329306..12e2d7ff4 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -385,12 +385,12 @@ Total time left %5 Actividad de Sync - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o ¿Estás seguro de que querés realizar esta operación? - + Remove All Files? ¿Borrar todos los archivos? - + Remove all files Borrar todos los archivos - + Keep files Conservar archivos @@ -1303,27 +1303,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sincronizaciójn abortada por el usuario. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1422,18 +1422,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Los archivos locales han cambiado durante la sincronización, la primera vez ha funcionado completamente - + Sync was aborted by user. Sincronizaciójn abortada por el usuario. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1535,16 +1535,27 @@ It is not advisable to use it. El estado de sincronización ha sido copiado al portapapeles - - Currently no files are ignored because of previous errors. - Actualmente ningún archivo es ignorado por errores previos. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2042,69 +2053,69 @@ It is not advisable to use it. El archivo contiene caracteres inválidos que no pueden ser sincronizados entre plataforma. - + Unable to initialize a sync journal. Imposible inicializar un diario de sincronización. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index a3a409524..3fb61886d 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -386,12 +386,12 @@ Aega kokku jäänud %5 Sünkroniseerimise tegevus - + Could not read system exclude file Süsteemi väljajätmiste faili lugemine ebaõnnestus - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ See võib olla põhjustatud kataloogi ümberseadistusest või on toimunud kõiki Oled kindel, et soovid seda operatsiooni teostada? - + Remove All Files? Kustutada kõik failid? - + Remove all files Kustutada kõik failid - + Keep files Säilita failid @@ -1306,27 +1306,27 @@ Selle kasutamine pole soovitatav. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sünkroniseering katkestati kasutaja poolt. - + No E-Tag received from server, check Proxy/Gateway Ühtegi E-Silti ei saabunud serverist, kontrolli puhverserverit/lüüsi. - + We received a different E-Tag for resuming. Retrying next time. Saime jätkamiseks erineva E-Sildi. Proovin järgmine kord uuesti. - + Server returned wrong content-range Server tagastas vale vahemiku - + File %1 can not be downloaded because of a local file name clash! Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. @@ -1425,18 +1425,18 @@ Selle kasutamine pole soovitatav. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Kohalik fail muutus sünkroniseerimise ajal, sünkroniseerin kuni ülekanne on täielik - + Sync was aborted by user. Sünkroniseering katkestati kasutaja poolt. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Faili on lokaalselt muudetud, kuid see on osa kirjutamisõiguseta jagamisest. See on taastatud ning sinu muudatus on konfliktses failis. @@ -1538,17 +1538,26 @@ Selle kasutamine pole soovitatav. Sünkroniseeringu staatus on kopeeritud lõikepuhvrisse. - - Currently no files are ignored because of previous errors. - Hetkel ei ignoreerita ühtegi faili eelnenud vigade tõttu. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n faili ignoreeriti eelnenud vigade tõttu. -Proovi uuesti sünkroniseerida.%n faili ignoreeriti eelnenud vigade tõttu. -Proovi uuesti sünkroniseerida. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2049,69 +2058,69 @@ Proovi uuesti sünkroniseerida. Fail sisaldab sobimatuid sümboleid, mida ei saa sünkroniseerida erinevate platvormide vahel. - + Unable to initialize a sync journal. Ei suuda lähtestada sünkroniseeringu zurnaali. - + Cannot open the sync journal Ei suuda avada sünkroniseeringu zurnaali - - + + Ignored because of the "choose what to sync" blacklist "Vali, mida sünkroniseerida" musta nimekirja tõttu vahele jäetud - + Not allowed because you don't have permission to add sub-directories in that directory Pole lubatud, kuna sul puuduvad õigused lisada sellesse kataloogi lisada alam-kataloogi - + Not allowed because you don't have permission to add parent directory Pole lubatud, kuna sul puuduvad õigused lisada ülemkataloog - + Not allowed because you don't have permission to add files in that directory Pole lubatud, kuna sul puuduvad õigused sellesse kataloogi faile lisada - + Not allowed to upload this file because it is read-only on the server, restoring Pole lubatud üles laadida, kuna tegemist on ainult-loetava serveriga, taastan - - + + Not allowed to remove, restoring Eemaldamine pole lubatud, taastan - + Local files and share folder removed. Kohalikud failid ja jagatud kaustad eemaldatud. - + Move not allowed, item restored Liigutamine pole lubatud, üksus taastatud - + Move not allowed because %1 is read-only Liigutamien pole võimalik kuna %1 on ainult lugemiseks - + the destination sihtkoht - + the source allikas diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index 221647b11..af1f52f18 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -386,12 +386,12 @@ Geratzen den denbora %5 Sinkronizazio Jarduerak - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Izan daiteke karpeta isilpean birkonfiguratu delako edo fitxategi guztiak eskuz Ziur zaude eragiketa hau egin nahi duzula? - + Remove All Files? Ezabatu Fitxategi Guztiak? - + Remove all files Ezabatu fitxategi guztiak - + Keep files Mantendu fitxategiak @@ -1306,27 +1306,27 @@ Ez da gomendagarria erabltzea. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sinkronizazioa erabiltzaileak bertan behera utzi du - + No E-Tag received from server, check Proxy/Gateway Ez da E-Tagik jaso zerbitzaritik, egiaztatu Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1425,18 +1425,18 @@ Ez da gomendagarria erabltzea. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. Sinkronizazioa erabiltzaileak bertan behera utzi du - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1538,16 +1538,27 @@ Ez da gomendagarria erabltzea. Sinkronizazio egoera arbelera kopiatu da. - - Currently no files are ignored because of previous errors. - Oraintxe ez da fitxategirik baztertzen aurreko erroreak direla eta. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2045,69 +2056,69 @@ Ez da gomendagarria erabltzea. - + Unable to initialize a sync journal. Ezin izan da sinkronizazio egunerokoa hasieratu. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Ezabatzeko baimenik gabe, berrezartzen - + Local files and share folder removed. - + Move not allowed, item restored Mugitzea ez dago baimenduta, elementua berrezarri da - + Move not allowed because %1 is read-only Mugitzea ez dago baimenduta %1 irakurtzeko bakarrik delako - + the destination helburua - + the source jatorria diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index e9708daa9..aa1916fad 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -385,29 +385,29 @@ Total time left %5 فعالیت همگام سازی - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files نگه داشتن فایل ها @@ -1299,27 +1299,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1418,18 +1418,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1531,16 +1531,27 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2038,69 +2049,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 121ae4c31..295e9afe1 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -386,29 +386,29 @@ Aikaa jäljellä yhteensä %5 Synkronointiaktiviteetti - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? Poistetaanko kaikki tiedostot? - + Remove all files Poista kaikki tiedostot - + Keep files Säilytä tiedostot @@ -1302,27 +1302,27 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synkronointi peruttiin käyttäjän toimesta. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1421,18 +1421,18 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. Synkronointi peruttiin käyttäjän toimesta. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1534,16 +1534,27 @@ Osoitteen käyttäminen ei ole suositeltavaa. Synkronointitila on kopioitu leikepöydälle. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2043,69 +2054,69 @@ Osoitteen käyttäminen ei ole suositeltavaa. Tiedosto sisältää virheellisiä merkkejä, joiden vuoksi sitä voi synkronoida eri käyttöjärjestelmien välillä. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory Ei sallittu, koska sinulla ei ole oikeutta lisätä tiedostoja kyseiseen kansioon - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Poistaminen ei ole sallittua, palautetaan - + Local files and share folder removed. Paikalliset tiedostot ja jakokansio poistettu. - + Move not allowed, item restored Siirtäminen ei ole sallittua, kohde palautettu - + Move not allowed because %1 is read-only Siirto ei ole sallittu, koska %1 on "vain luku"-tilassa - + the destination kohde - + the source lähde diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index eb50088a0..546952565 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -386,12 +386,12 @@ Temps restant total %5 Activité de synchronisation - + Could not read system exclude file Impossible de lire le fichier d'exclusion du système - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Cela est peut-être du à une reconfiguration silencieuse du dossier, ou parce q Voulez-vous réellement effectuer cette opération ? - + Remove All Files? Supprimer tous les fichiers ? - + Remove all files Supprimer tous les fichiers - + Keep files Garder les fichiers @@ -1306,27 +1306,27 @@ Il est déconseillé de l'utiliser. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. La synchronisation a été interrompue par l'utilisateur. - + No E-Tag received from server, check Proxy/Gateway Aucun E-Tag reçu du serveur, vérifiez le proxy / la passerelle - + We received a different E-Tag for resuming. Retrying next time. Nous avons reçu un E-Tag différent pour reprendre le téléchargement. Nouvel essai la prochaine fois. - + Server returned wrong content-range Le serveur a retourné une gamme de contenu erronnée - + File %1 can not be downloaded because of a local file name clash! File %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. @@ -1425,18 +1425,18 @@ Il est déconseillé de l'utiliser. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Fichier local modifié pendant la synchronisation, la synchronisation redémarrera lorsque ce sera terminé - + Sync was aborted by user. La synchronisation a été interrompue par l'utilisateur. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Le fichier a été modifié localement mais appartient à un partage en lecture seule. Il a été restauré et vos modifications sont présentes dans le fichiers de confit. @@ -1538,17 +1538,26 @@ Il est déconseillé de l'utiliser. L'état de synchronisation a été copié dans le presse-papier. - - Currently no files are ignored because of previous errors. - Actuellement aucun fichier n'a été ignoré en raison d'erreurs précédentes. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n fichier a été ignoré à cause de précédentes erreurs. -Essayez de le synchroniser à nouveau.%n fichiers ont été ignorés à cause de précédentes erreurs. -Essayez de les synchroniser à nouveau. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2049,69 +2058,69 @@ Essayez de les synchroniser à nouveau. Le fichier contient des caractères non valides qui ne peuvent être synchronisés entre plate-formes. - + Unable to initialize a sync journal. Impossible d'initialiser un journal de synchronisation. - + Cannot open the sync journal Impossible d'ouvrir le journal de synchronisation - - + + Ignored because of the "choose what to sync" blacklist Ignoré à cause de la liste noire du contenu à synchroniser. - + Not allowed because you don't have permission to add sub-directories in that directory Non autorisé car vous n'avez pas la permission d'ajouter des sous-dossiers dans ce dossier - + Not allowed because you don't have permission to add parent directory Non autorisé car vous n'avez pas la permission d'ajouter des dossiers parents - + Not allowed because you don't have permission to add files in that directory Non autorisé car vous n'avez pas la permission d'ajouter des fichiers dans ce dossier - + Not allowed to upload this file because it is read-only on the server, restoring Non autorisé à envoyer ce fichier car il est en lecture seule sur le serveur. Restauration - - + + Not allowed to remove, restoring Non autorisé à supprimer. Restauration - + Local files and share folder removed. Fichiers locaux et répertoire de partage supprimés. - + Move not allowed, item restored Déplacement non autorisé, élément restauré - + Move not allowed because %1 is read-only Déplacement non autorisé car %1 est en mode lecture seule - + the destination la destination - + the source la source diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 3a7e3078b..73333044b 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -106,7 +106,7 @@ Choose What to Sync - + Escolla qué sincronizar @@ -163,7 +163,7 @@ file %1 of %2 - + ficheiro %1 de %2 @@ -198,7 +198,7 @@ Discovering '%1' - + Atopando '%1' @@ -373,12 +373,12 @@ Tempo total restante %5 %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 e %2 non se puideron sincronizar debido a erros. Vexa os detalles no rexistro. %1 could not be synced due to an error. See the log for details. - + %1 non se puido sincronizar debe a un erro. Vexa os detalles no rexistro. @@ -386,12 +386,12 @@ Tempo total restante %5 Actividade de sincronización - + Could not read system exclude file - + Non se puido ler o ficheiro de exclusión do sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isto podería ser debido a que o cartafol foi reconfigurado en silencio, ou a qu Confirma que quere realizar esta operación? - + Remove All Files? Retirar todos os ficheiros? - + Remove all files Retirar todos os ficheiros - + Keep files Manter os ficheiros @@ -622,7 +622,7 @@ Confirma que quere realizar esta operación? Choose What to Sync: You can optionally deselect subfolders you do not wish to synchronize. - + Escolla qué sincronizar: Opcionalmente pode deselecionar subcartafoles que non desexe sincronizar. @@ -1018,7 +1018,7 @@ actualización pode pedir privilexios adicionais durante o proceso. Update status is unknown: Did not check for new updates. - + O estado da actualización é descoñecido: non se comprobaron as actualizacións. @@ -1282,7 +1282,7 @@ Recomendámoslle que non o use. Open %1 in Browser - + Abrir %1 no navegador @@ -1306,27 +1306,27 @@ Recomendámoslle que non o use. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronización foi interrompida polo usuario. - + No E-Tag received from server, check Proxy/Gateway Non se recibiu a «E-Tag» do servidor, comprobe o proxy e/ou a pasarela - + We received a different E-Tag for resuming. Retrying next time. Recibiuse unha «E-Tag» diferente para continuar. Tentándoo outra vez. - + Server returned wrong content-range O servidor devolveu un intervalo de contidos estragado - + File %1 can not be downloaded because of a local file name clash! Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! @@ -1341,7 +1341,7 @@ Recomendámoslle que non o use. File %1 cannot be saved because of a local file name clash! - + O ficheiro %1 non se gardou debido a unha colisión co nome dun ficheiro local! @@ -1375,12 +1375,12 @@ Recomendámoslle que non o use. Error removing '%1': %2; - + Erro eliminando '%1': %2; Could not remove directory '%1'; - + Non se puido eliminar o directorio '%1'; @@ -1425,18 +1425,18 @@ Recomendámoslle que non o use. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely O ficheiro local cambiou durante a sincronización, sincronizando unha vez quedou completado - + Sync was aborted by user. A sincronización foi interrompida polo usuario. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mais é parte dunha compartición de só lectura. O ficheiro foi restaurado e a súa edición atopase no ficheiro de conflitos. @@ -1538,28 +1538,39 @@ Recomendámoslle que non o use. O estado de sincronización foi copiado no portapapeis. - - Currently no files are ignored because of previous errors. - Actualmente non hai ficheiros ignorados por mor de erros anteriores. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog Choose What to Sync - + Escolla qué sincronizar Unchecked folders will be <b>removed</b> from your local file system and will not be synchronized to this computer anymore - + Os cartafoles non selecionados serán <b>eliminados</b> do seu sistema de ficheiros local e non se voltarán a sincronizar con esta computadora @@ -2014,7 +2025,7 @@ Recomendámoslle que non o use. The mounted directory is temporary not available on the server - + O directorio montado non está temporalmente dispoñible no servidor @@ -2047,69 +2058,69 @@ Recomendámoslle que non o use. O ficheiro conten caracteres incorrectos que non poden sincronizarse entre distintas plataformas. - + Unable to initialize a sync journal. Non é posíbel iniciar un rexistro de sincronización. - + Cannot open the sync journal Non foi posíbel abrir o rexistro de sincronización - - + + Ignored because of the "choose what to sync" blacklist - + Ignorado debido a lista negra de "escolla qué sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Non está permitido xa que non ten permiso para engadir subdirectorios nese directorio - + Not allowed because you don't have permission to add parent directory Non está permitido xa que non ten permiso para engadir un directorio pai - + Not allowed because you don't have permission to add files in that directory Non está permitido xa que non ten permiso para engadir ficheiros nese directorio - + Not allowed to upload this file because it is read-only on the server, restoring Non está permitido o envío xa que o ficheiro é só de lectura no servidor, restaurando - - + + Not allowed to remove, restoring Non está permitido retiralo, restaurando - + Local files and share folder removed. - + Ficheiros locáis e cartafol compartido eliminados. - + Move not allowed, item restored Nos está permitido movelo, elemento restaurado - + Move not allowed because %1 is read-only Bon está permitido movelo xa que %1 é só de lectura - + the destination o destino - + the source a orixe @@ -2155,7 +2166,7 @@ Recomendámoslle que non o use. There are no sync folders configured. - + Non existen cartafoles de sincronización configurados. @@ -2245,7 +2256,7 @@ Recomendámoslle que non o use. Discovering '%1' - + Atopando '%1' @@ -2273,7 +2284,7 @@ Recomendámoslle que non o use. <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz and others.<br/>Based on Mirall by Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licensed under the GNU General Public License (GPL) Version 2.0<br/>ownCloud and the ownCloud Logo are registered trademarks of ownCloud, Inc. in the United States, other countries, or both.</p> - + <p>Versión %2. Para máis información visite <a href="%3">%4</a></p><p><small>Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz e outros.<br/>Baseado en Mirall de Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licenciado baixo a GNU General Public License (GPL) Version 2.0<br/>ownCloud e o Logo ownCloud son marcas rexistradas de ownCloud, Inc. nos Estados Unidos, outros países ou en ambos.</p> @@ -2300,12 +2311,12 @@ Recomendámoslle que non o use. Sync everything from server - + Sincronice todo o contido do servidor Choose what to sync - + Escolla qué sincronizar @@ -2315,7 +2326,7 @@ Recomendámoslle que non o use. &Start a clean sync (Erases the local folder!) - + &Iniciar unha nova sincronización (Elimina o cartafol local!) diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index c2c66d6d0..cfe26ede5 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -385,29 +385,29 @@ Total time left %5 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? El legyen távolítva az összes fájl? - + Remove all files Összes fájl eltávolítása - + Keep files Fájlok megtartása @@ -1299,27 +1299,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1418,18 +1418,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1531,16 +1531,27 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2038,69 +2049,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index 425027791..c43ee6047 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -386,12 +386,12 @@ Totale tempo rimanente %5 Sincronizza attività - + Could not read system exclude file Impossibile leggere il file di esclusione di sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Ciò potrebbe accadere in caso di riconfigurazione della cartella o di rimozione Sei sicuro di voler eseguire questa operazione? - + Remove All Files? Vuoi rimuovere tutti i file? - + Remove all files Rimuovi tutti i file - + Keep files Mantieni i file @@ -1305,27 +1305,27 @@ Non è consigliabile utilizzarlo. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sincronizzazione interrotta dall'utente. - + No E-Tag received from server, check Proxy/Gateway Nessun e-tag ricevuto dal server, controlla il proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Abbiamo ricevuto un e-tag diverso per il recupero. Riprova più tardi. - + Server returned wrong content-range Il server ha restituito un content-range errato - + File %1 can not be downloaded because of a local file name clash! Il file %1 non può essere scaricato a causa di un conflitto con un file locale. @@ -1424,18 +1424,18 @@ Non è consigliabile utilizzarlo. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Un file locale è cambiato durante la sincronizzazione, nuova sincronizzazione alla ricezione. - + Sync was aborted by user. Sincronizzazione interrotta dall'utente. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Il file è stato modificato localmente, ma è parte di una condivisione in sola lettura. È stato ripristinato e la tua modifica è nel file di conflitto. @@ -1537,17 +1537,26 @@ Non è consigliabile utilizzarlo. Lo stato di sincronizzazione è stato copiato negli appunti. - - Currently no files are ignored because of previous errors. - Attualmente nessun file è ignorato a causa di errori precedenti. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n file sono ignorati a causa di errori precedenti. -Prova a sincronizzare nuovamente.%n file sono ignorati a causa di errori precedenti. -Prova a sincronizzare nuovamente. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2048,69 +2057,69 @@ Prova a sincronizzare nuovamente. Il file contiene caratteri non validi che non possono essere sincronizzati su diverse piattaforme. - + Unable to initialize a sync journal. Impossibile inizializzare il registro di sincronizzazione. - + Cannot open the sync journal Impossibile aprire il registro di sincronizzazione - - + + Ignored because of the "choose what to sync" blacklist Ignorato in base alla lista nera per la scelta di cosa sincronizzare - + Not allowed because you don't have permission to add sub-directories in that directory Non consentito poiché non disponi dei permessi per aggiungere sottocartelle in quella cartella - + Not allowed because you don't have permission to add parent directory Non consentito poiché non disponi dei permessi per aggiungere la cartella superiore - + Not allowed because you don't have permission to add files in that directory Non consentito poiché non disponi dei permessi per aggiungere file in quella cartella - + Not allowed to upload this file because it is read-only on the server, restoring Il caricamento di questo file non è consentito poiché è in sola lettura sul server, ripristino - - + + Not allowed to remove, restoring Rimozione non consentita, ripristino - + Local files and share folder removed. I file locali e la cartella condivisa sono stati rimossi. - + Move not allowed, item restored Spostamento non consentito, elemento ripristinato - + Move not allowed because %1 is read-only Spostamento non consentito poiché %1 è in sola lettura - + the destination la destinazione - + the source l'origine diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index b36ac2a10..103a4fd88 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -386,12 +386,12 @@ Total time left %5 同期アクティビティ - + Could not read system exclude file システム上の除外ファイルを読み込めません - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? 本当にこの操作を実行しますか? - + Remove All Files? すべてのファイルを削除しますか? - + Remove all files すべてのファイルを削除 - + Keep files ファイルを残す @@ -1304,27 +1304,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. 同期はユーザーによって中止されました。 - + No E-Tag received from server, check Proxy/Gateway サーバーからE-Tagを受信できません。プロキシ/ゲートウェイを確認してください。 - + We received a different E-Tag for resuming. Retrying next time. 同期再開時に違う E-Tagを受信しました。次回リトライします。 - + Server returned wrong content-range サーバーが間違ったcontent-rangeを返しました - + File %1 can not be downloaded because of a local file name clash! ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! @@ -1423,18 +1423,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely 同期中にローカルファイルが変更されました。完了してからもう一度同期してください。 - + Sync was aborted by user. 同期はユーザーによって中止されました。 - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. ファイルがローカルで編集されましたが、読み込み専用の共有の一部です。それは復元され、あなたの編集は競合するファイル内にあります。 @@ -1536,16 +1536,26 @@ It is not advisable to use it. 同期状況をクリップボードにコピーしました。 - - Currently no files are ignored because of previous errors. - 処理前にエラーが発生したため、ファイルは何も除外されていません。 + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - 直前のエラーのため、%n個のファイルが無視されました。 -もう一度同期してください。 + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2046,69 +2056,69 @@ It is not advisable to use it. ファイルに無効な文字が含まれているため、クロスプラットフォーム環境での同期ができません。 - + Unable to initialize a sync journal. 同期ジャーナルの初期化ができません。 - + Cannot open the sync journal 同期ジャーナルを開くことができません - - + + Ignored because of the "choose what to sync" blacklist "同期対象先" ブラックリストにより無視されました。 - + Not allowed because you don't have permission to add sub-directories in that directory そのディレクトリにサブディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add parent directory 親ディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add files in that directory そのディレクトリにファイルを追加する権限がありません - + Not allowed to upload this file because it is read-only on the server, restoring サーバーでは読み取り専用となっているため、このファイルをアップロードすることはできません、復元しています - - + + Not allowed to remove, restoring 削除できません、復元しています - + Local files and share folder removed. ローカルファイルと共有フォルダが削除されました。 - + Move not allowed, item restored 移動できません、項目を復元しました - + Move not allowed because %1 is read-only %1 は読み取り専用のため移動できません - + the destination 移動先 - + the source 移動元 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 57e72a438..cff33616a 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -386,12 +386,12 @@ Totaal resterende tijd %5 Synchronisatie-activiteit - + Could not read system exclude file Kon het systeem-uitsluitingsbestand niet lezen - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Dit kan komen doordat de map ongemerkt opnieuw geconfigureerd is of doordat alle Weet u zeker dat u deze bewerking wilt uitvoeren? - + Remove All Files? Verwijder alle bestanden? - + Remove all files Verwijder alle bestanden - + Keep files Bewaar bestanden @@ -1306,27 +1306,27 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronisatie afgebroken door gebruiker. - + No E-Tag received from server, check Proxy/Gateway Geen E-Tag ontvangen van de server, controleer Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. We ontvingen een afwijkende E-Tag om door te gaan. We proberen het later opnieuw. - + Server returned wrong content-range Server retourneerde verkeerde content-bandbreedte - + File %1 can not be downloaded because of a local file name clash! Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand @@ -1425,18 +1425,18 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Een lokaal bestand is gewijzigd tijdens het synchroniseren, wordt gesynchroniseerd als het volledig is aangekomen. - + Sync was aborted by user. Synchronisatie afgebroken door gebruiker. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Het bestand is lokaal bewerkt, maar hoort bij een alleen-lezen share. Het originele bestand is teruggezet en uw bewerking staat in het conflicten bestand. @@ -1538,17 +1538,26 @@ We adviseren deze site niet te gebruiken. Het synchronisatie overzicht is gekopieerd naar het klembord. - - Currently no files are ignored because of previous errors. - Er zijn nu geen bestanden genegeerd vanwege eerdere fouten. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %1 bestand genegeerd vanwege eerdere fouten. -Probeer opnieuw te synchroniseren.%1 bestanden zijn genegeerd vanwege eerdere fouten. -Probeer opnieuw te synchroniseren. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2049,69 +2058,69 @@ Probeer opnieuw te synchroniseren. Bestand bevat ongeldige karakters die niet tussen platformen gesynchroniseerd kunnen worden. - + Unable to initialize a sync journal. Niet in staat om een synchornisatie journaal te starten. - + Cannot open the sync journal Kan het sync journal niet openen - - + + Ignored because of the "choose what to sync" blacklist Genegeerd vanwege de "kies wat te synchen" zwarte lijst - + Not allowed because you don't have permission to add sub-directories in that directory Niet toegestaan, omdat u geen rechten hebt om sub-directories aan te maken in die directory - + Not allowed because you don't have permission to add parent directory Niet toegestaan, omdat u geen rechten hebt om een bovenliggende directories toe te voegen - + Not allowed because you don't have permission to add files in that directory Niet toegestaan, omdat u geen rechten hebt om bestanden in die directory toe te voegen - + Not allowed to upload this file because it is read-only on the server, restoring Niet toegestaan om dit bestand te uploaden, omdat het alleen-lezen is op de server, herstellen - - + + Not allowed to remove, restoring Niet toegestaan te verwijderen, herstellen - + Local files and share folder removed. Lokale bestanden en share-map verwijderd. - + Move not allowed, item restored Verplaatsen niet toegestaan, object hersteld - + Move not allowed because %1 is read-only Verplaatsen niet toegestaan omdat %1 alleen-lezen is - + the destination bestemming - + the source bron diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index 203ee4d1d..b51eaeea3 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -386,12 +386,12 @@ Pozostało czasu %5 Aktywności synchronizacji - + Could not read system exclude file Nie można przeczytać pliku wyłączeń - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mogło się tak zdarzyć z powodu niezauważonej rekonfiguracji folderu, lub te Czy jesteś pewien/pewna, że chcesz wykonać tę operację? - + Remove All Files? Usunąć wszystkie pliki? - + Remove all files Usuń wszystkie pliki - + Keep files Pozostaw pliki @@ -1306,27 +1306,27 @@ Niezalecane jest jego użycie. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizacja anulowane przez użytkownika. - + No E-Tag received from server, check Proxy/Gateway Nie otrzymano E-Tag z serwera, sprawdź Proxy/Bramę - + We received a different E-Tag for resuming. Retrying next time. Otrzymaliśmy inny E-Tag wznowienia. Spróbuje ponownie następnym razem. - + Server returned wrong content-range Serwer zwrócił błędną zakres zawartości - + File %1 can not be downloaded because of a local file name clash! Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! @@ -1425,18 +1425,18 @@ Niezalecane jest jego użycie. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Lokalny plik zmienił się podczas synchronizacji, synchronizuję ponownie ponieważ dotarł w całości. - + Sync was aborted by user. Synchronizacja anulowane przez użytkownika. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Plik był edytowany lokalnie ale jest częścią udziału z prawem tylko do odczytu. Został przywrócony i Twoja edycja jest w pliku konfliktu @@ -1538,16 +1538,27 @@ Niezalecane jest jego użycie. Status synchronizacji został skopiowany do schowka. - - Currently no files are ignored because of previous errors. - Obecnie nie ma plików, które są ignorowane z powodu wcześniejszych błędów. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2047,69 +2058,69 @@ Niezalecane jest jego użycie. Plik zawiera nieprawidłowe znaki, które nie mogą być synchronizowane wieloplatformowo. - + Unable to initialize a sync journal. Nie można zainicjować synchronizacji dziennika. - + Cannot open the sync journal Nie można otworzyć dziennika synchronizacji - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie masz uprawnień do dodawania podkatalogów w tym katalogu. - + Not allowed because you don't have permission to add parent directory Nie masz uprawnień by dodać katalog nadrzędny - + Not allowed because you don't have permission to add files in that directory Nie masz uprawnień by dodać pliki w tym katalogu - + Not allowed to upload this file because it is read-only on the server, restoring Wgrywanie niedozwolone, ponieważ plik jest tylko do odczytu na serwerze, przywracanie - - + + Not allowed to remove, restoring Brak uprawnień by usunąć, przywracanie - + Local files and share folder removed. - + Move not allowed, item restored Przenoszenie niedozwolone, obiekt przywrócony - + Move not allowed because %1 is read-only Przenoszenie niedozwolone, ponieważ %1 jest tylko do odczytu - + the destination docelowy - + the source źródło diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 7d8ea3b67..5f397d225 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -386,12 +386,12 @@ Total time left %5 Actividade de sincronicação - + Could not read system exclude file Não foi possível ler o ficheiro system exclude - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha "Manter os ficheiros". Se quer apagar os seus dados, escolha "Remover todos os ficheiros". - + Remove All Files? Remover todos os ficheiros? - + Remove all files Remover todos os ficheiros - + Keep files Manter os ficheiros @@ -1303,27 +1303,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronização foi cancelada pelo utilizador. - + No E-Tag received from server, check Proxy/Gateway Nenhum E-Tag recebido do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tentando uma próxima vez. - + Server returned wrong content-range O servidor retornou o alcance-conteúdo errado - + File %1 can not be downloaded because of a local file name clash! O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! @@ -1422,18 +1422,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Ficheiro local foi alterado durante a sincronização. A sincronizar quando chegar na totalidade - + Sync was aborted by user. A sincronização foi cancelada pelo utilizador. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mas faz parte de uma prtilha só de leitura. Foi restaurado mas a edição está no ficheiro de conflito. @@ -1535,17 +1535,26 @@ It is not advisable to use it. O estado da sincronização foi copiada para a área de transferência. - - Currently no files are ignored because of previous errors. - Devido a erros anteriores, nenhum ficheiro é ignorado. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n ficheiros são ignorados devido a erros anteriores. -Tente sincronizá-los novamente.%n ficheiros são ignorados devido a erros anteriores. -Tente sincronizá-los novamente. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2047,69 +2056,69 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n O ficheiro contém caracteres inválidos que não podem ser sincronizados pelas várias plataformas. - + Unable to initialize a sync journal. Impossível inicializar sincronização 'journal'. - + Cannot open the sync journal Impossível abrir o jornal de sincronismo - - + + Ignored because of the "choose what to sync" blacklist Ignorado devido à blacklist de escolha para sincronização - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido, porque não tem permissão para adicionar sub-directórios ao directório - + Not allowed because you don't have permission to add parent directory Não permitido, porque não tem permissão para adicionar o directório principal - + Not allowed because you don't have permission to add files in that directory Não permitido, porque não tem permissão para adicionar ficheiros no directório - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o envio deste ficheiro porque é só de leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não autorizado para remoção, restaurando - + Local files and share folder removed. Ficheiros locais e pasta partilhada removidos. - + Move not allowed, item restored Mover não foi permitido, item restaurado - + Move not allowed because %1 is read-only Mover não foi autorizado porque %1 é só de leitura - + the destination o destino - + the source a origem diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index 7af8da783..90ec8a57c 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -386,12 +386,12 @@ Total de tempo que falta 5% Atividade de Sincronização - + Could not read system exclude file Não foi possível ler o sistema de arquivo de exclusão - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isso pode ser porque a pasta foi silenciosamente reconfigurada, ou todos os arqu Você tem certeza que quer executar esta operação? - + Remove All Files? Deseja Remover Todos os Arquivos? - + Remove all files Remover todos os arquivos - + Keep files Manter arquivos @@ -1304,27 +1304,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronização foi abortada pelo usuário. - + No E-Tag received from server, check Proxy/Gateway Nenhuma E-Tag recebida do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tente uma próxima vez. - + Server returned wrong content-range O servidor retornou erro numa série-de-conteúdo - + File %1 can not be downloaded because of a local file name clash! O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! @@ -1423,18 +1423,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Arquivo local alterado durante a sincronização, sincronizando uma vez que chegou completamente - + Sync was aborted by user. A sincronização foi abortada pelo usuário. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O arquivo foi editado localmente mas faz parte de compartilhamento só de leitura. Ele foi restaurado mas sua edição está em conflito com o arquivo. @@ -1536,16 +1536,27 @@ It is not advisable to use it. O estado de sincronização foi copiado para a área de transferência. - - Currently no files are ignored because of previous errors. - Correntemente nenhum arquivo será ignorado por causa de erros prévios. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2045,69 +2056,69 @@ It is not advisable to use it. Arquivos que contém caracteres inválidos não podem ser sincronizados através de plataformas. - + Unable to initialize a sync journal. Impossibilitado de iniciar a sincronização. - + Cannot open the sync journal Não é possível abrir o arquivo de sincronização - - + + Ignored because of the "choose what to sync" blacklist Ignorado por causa da lista negra "escolher o que sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido porque você não tem permissão de criar sub-pastas nesta pasta - + Not allowed because you don't have permission to add parent directory Não permitido porque você não tem permissão de criar pastas mãe - + Not allowed because you don't have permission to add files in that directory Não permitido porque você não tem permissão de adicionar arquivos a esta pasta - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o upload deste arquivo porque ele é somente leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não é permitido remover, restaurando - + Local files and share folder removed. Arquivos locais e pasta compartilhada removida. - + Move not allowed, item restored Não é permitido mover, item restaurado - + Move not allowed because %1 is read-only Não é permitido mover porque %1 é somente para leitura - + the destination o destino - + the source a fonte diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 018950bda..b900552ea 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -386,12 +386,12 @@ Total time left %5 Журнал синхронизации - + Could not read system exclude file Невозможно прочесть исключенный системный файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Вы уверены, что хотите выполнить операцию? - + Remove All Files? Удалить все файлы? - + Remove all files Удалить все файлы - + Keep files Сохранить файлы @@ -1306,27 +1306,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Синхронизация прервана пользователем. - + No E-Tag received from server, check Proxy/Gateway E-Tag от сервера на получен, проверьте сетевые настройки (настройки прокси, шлюз). - + We received a different E-Tag for resuming. Retrying next time. Мы получили другой E-Tag для возобновления. Повторите попытку позже. - + Server returned wrong content-range Сервер вернул неверный диапазон содержания - + File %1 can not be downloaded because of a local file name clash! Файл %1 не может быть загружен из-за локальных конфликтов имен! @@ -1425,18 +1425,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Локальный файл изменился в процессе синхронизации, повторяем процесс - + Sync was aborted by user. Синхронизация прервана пользователем. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Этот файл был изменен локально, но является частью опубликованной папки с правами только для чтения. Он восстановлен и ваши изменения находятся в файле конфликтов. @@ -1538,18 +1538,26 @@ It is not advisable to use it. Статус синхронизации скопирован в буфер обмена. - - Currently no files are ignored because of previous errors. - На данный момент файлы, игнорируемые из-за ошибок, отсутствуют. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n файл проигнорированы из-за предыдущих ошибок. -Попробуйте синхронизировать их ещё раз.%n файлов проигнорированы из-за предыдущих ошибок. -Попробуйте синхронизировать их ещё раз.%n файла проигнорированы из-за предыдущих ошибок. -Попробуйте синхронизировать их ещё раз. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2050,69 +2058,69 @@ It is not advisable to use it. Файл содержит недопустимые символы, которые невозможно синхронизировать между платформами. - + Unable to initialize a sync journal. Не удалось инициализировать журнал синхронизации. - + Cannot open the sync journal Не удаётся открыть журнал синхронизации - - + + Ignored because of the "choose what to sync" blacklist Игнорируется из-за черного списка в "выбрать что синхронизировать" - + Not allowed because you don't have permission to add sub-directories in that directory Недопустимо из-за отсутствия у вас разрешений на добавление подпапок в этой папке - + Not allowed because you don't have permission to add parent directory Недопустимо из-за отсутствия у вас разрешений на добавление родительской папки - + Not allowed because you don't have permission to add files in that directory Недопустимо из-за отсутствия у вас разрешений на добавление файлов в эту папку - + Not allowed to upload this file because it is read-only on the server, restoring Недопустимо отправить этот файл поскольку на севрере он помечен только для чтения, восстанавливаем - - + + Not allowed to remove, restoring Недопустимо удалить, восстанавливаем - + Local files and share folder removed. Локальные файлы и папки, добавленные в общий доступ, удалены. - + Move not allowed, item restored Перемещение недопустимо, элемент восстановлен - + Move not allowed because %1 is read-only Перемещение недопустимо, поскольку %1 помечен только для чтения - + the destination Назначение - + the source Источник diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 27ee09d7d..81bd850bf 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -386,12 +386,12 @@ Celkom zostáva %5 Aktivita synchronizácie - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto môže byť kvôli tichej rekonfigurácii priečinka, prípadne boli všetk Ste si istý, že chcete uskutočniť danú operáciu? - + Remove All Files? Odstrániť všetky súbory? - + Remove all files Odstrániť všetky súbory - + Keep files Ponechať súbory @@ -1306,27 +1306,27 @@ Nie je vhodné ju používať. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizácia zrušená používateľom. - + No E-Tag received from server, check Proxy/Gateway Zo servera nebol prijatý E-Tag, skontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Prijali sme iný E-Tag pre pokračovanie. Skúsim to neskôr znovu. - + Server returned wrong content-range Server vrátil nesprávnu hodnotu Content-range - + File %1 can not be downloaded because of a local file name clash! Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! @@ -1425,18 +1425,18 @@ Nie je vhodné ju používať. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Lokálny súbor bol počas synchronizácie zmenený, zosynchronizuje sa, akonáhle bude kompletný - + Sync was aborted by user. Synchronizácia zrušená používateľom. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Súbor bol zmenený, ale je súčasťou zdieľania len na čítanie. Pôvodný súbor bol obnovený a upravená verzia je uložená v konfliktnom súbore. @@ -1538,16 +1538,27 @@ Nie je vhodné ju používať. Stav synchronizácie bol nakopírovaný do schránky. - - Currently no files are ignored because of previous errors. - V súčastnosti nie sú na čiernej listine žiadne súbory kvôli predchádzajúcim chybovým stavom. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2047,69 +2058,69 @@ Nie je vhodné ju používať. Súbor obsahuje neplatné znaky, ktoré nemôžu byť zosynchronizované medzi platformami. - + Unable to initialize a sync journal. Nemôžem inicializovať synchronizačný žurnál. - + Cannot open the sync journal Nemožno otvoriť sync žurnál - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára podadresáre. - + Not allowed because you don't have permission to add parent directory Nie je dovolené, pretože nemáte oprávnenie pridať nadradený adresár. - + Not allowed because you don't have permission to add files in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára súbory. - + Not allowed to upload this file because it is read-only on the server, restoring Nie je dovolené tento súbor nahrať, pretože je na serveri iba na čítanie. Obnovuje sa. - - + + Not allowed to remove, restoring Nie je dovolené odstrániť. Obnovuje sa. - + Local files and share folder removed. - + Move not allowed, item restored Presunutie nie je dovolené. Položka obnovená. - + Move not allowed because %1 is read-only Presunutie nie je dovolené, pretože %1 je na serveri iba na čítanie - + the destination cieľ - + the source zdroj diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 7113bfec7..de6e1d857 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -386,12 +386,12 @@ Skupaj še %5 Dejavnost usklajevanja - + Could not read system exclude file Ni mogoče prebrati sistemske izločitvene datoteke - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mapa je bila morda odstranjena ali pa so bile nastavitve spremenjene. Ali sta prepričani, da želite izvesti to opravilo? - + Remove All Files? Ali naj bodo odstranjene vse datoteke? - + Remove all files Odstrani vse datoteke - + Keep files Ohrani datoteke @@ -1306,27 +1306,27 @@ Uporaba ni priporočljiva. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Usklajevanje je bilo prekinjeno s strani uporabnika - + No E-Tag received from server, check Proxy/Gateway Ni prejete oznake s strežnika. Preveriti je treba podatke posredovalnega strežnika ali prehoda. - + We received a different E-Tag for resuming. Retrying next time. Prejeta je različna oznaka za nadaljevanje opravila. Ponovni poskus bo izveden kasneje. - + Server returned wrong content-range Odziv strežnika kaže na neveljaven obseg vsebine - + File %1 can not be downloaded because of a local file name clash! Datoteke %1 ni možno prejeti, zaradi neskladja z imenom krajevne datoteke! @@ -1425,18 +1425,18 @@ Uporaba ni priporočljiva. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Krajevna datoteka je bila med usklajevanjem spremenjena. Usklajena bo, ko bo shranjena. - + Sync was aborted by user. Usklajevanje je bilo prekinjeno s strani uporabnika - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Datoteka je bila krajevno spremenjena, vendar pa je označena za souporabo le za branje. Izvorna datoteka je obnovljena, vaše spremembe pa so zabeležene v datoteki spora. @@ -1538,19 +1538,26 @@ Uporaba ni priporočljiva. Stanje usklajevanja je kopirano v odložišče. - - Currently no files are ignored because of previous errors. - Trenutno zaradi predhodnih napak ni prezrta nobena datoteka. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n datoteka je prezrta zaradi predhodnih napak. -Datoteko poskusite uskladiti znova.%n datoteki sta prezrti zaradi predhodnih napak. -Datoteki poskusite uskladiti znova.%n datoteke so prezrte zaradi predhodnih napak. -Datoteke poskusite uskladiti znova.%n datotek je prezrtih zaradi predhodnih napak. -Datoteke poskusite uskladiti znova. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2051,69 +2058,69 @@ Datoteke poskusite uskladiti znova. Ime datoteke vsebuje neveljavne znake, ki niso podprti na vseh okoljih. - + Unable to initialize a sync journal. Dnevnika usklajevanja ni mogoče začeti. - + Cannot open the sync journal Ni mogoče odpreti dnevnika usklajevanja - - + + Ignored because of the "choose what to sync" blacklist Prezrto, ker ni neizbrano za usklajevanje - + Not allowed because you don't have permission to add sub-directories in that directory Ni ustreznih dovoljenj za dodajanje podmap v izbrano mapo. - + Not allowed because you don't have permission to add parent directory Ni ustreznih dovoljenj za dodajanje nadrejene mape. - + Not allowed because you don't have permission to add files in that directory Ni ustreznih dovoljenj za dodajanje datotek v izbrano mapo. - + Not allowed to upload this file because it is read-only on the server, restoring Ni dovoljeno pošiljati te datoteke, ker ima določena dovoljenja le za branje. Datoteka bo obnovljena na izvorno različico. - - + + Not allowed to remove, restoring Odstranitev ni dovoljena, datoteka bo obnovljena. - + Local files and share folder removed. Krajevne datoteke in mape v souporabi so odstranjene. - + Move not allowed, item restored Premikanje ni dovoljeno, datoteka bo obnovljena. - + Move not allowed because %1 is read-only Premikanje ni dovoljeno, ker je nastavljeno določilo %1 le za branje. - + the destination cilj - + the source vir diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index 3eeb0d7c1..a1b9d4342 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -386,12 +386,12 @@ Total tid kvar %5 Synk aktivitet - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Är du säker på att du vill fortsätta? - + Remove All Files? Ta bort alla filer? - + Remove all files Ta bort alla filer - + Keep files Behåll filer @@ -1306,27 +1306,27 @@ Det är inte lämpligt använda den. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synkningen avbröts av användare. - + No E-Tag received from server, check Proxy/Gateway Ingen E-Tag mottogs från servern, kontrollera proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Vi mottog en helt annan E-Tag för att återuppta. Försöker igen nästa gång. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! @@ -1425,18 +1425,18 @@ Det är inte lämpligt använda den. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Lokal fil ändrades under synk, synkar när den har anlänt komplett - + Sync was aborted by user. Synkningen avbröts av användare. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Filen ändrades lokalt men är en del av en endast-läsbar delning. Den återställs och din editering är i konflikt filen. @@ -1538,16 +1538,27 @@ Det är inte lämpligt använda den. Synkroniseringsstatus har kopierats till urklipp. - - Currently no files are ignored because of previous errors. - För närvarande ignoreras inga filer på grund av föregående fel. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2047,69 +2058,69 @@ Det är inte lämpligt använda den. Filen innehåller ogiltiga tecken som inte kan synkas oberoende av plattform. - + Unable to initialize a sync journal. Kan inte initialisera en synk journal. - + Cannot open the sync journal Kunde inte öppna synk journalen - - + + Ignored because of the "choose what to sync" blacklist Ignorerad eftersom den är svartlistad i "välj vad som ska synkas" - + Not allowed because you don't have permission to add sub-directories in that directory Går ej att genomföra då du saknar rättigheter att lägga till underkataloger i den katalogen - + Not allowed because you don't have permission to add parent directory Går ej att genomföra då du saknar rättigheter att lägga till någon moderkatalog - + Not allowed because you don't have permission to add files in that directory Går ej att genomföra då du saknar rättigheter att lägga till filer i den katalogen - + Not allowed to upload this file because it is read-only on the server, restoring Inte behörig att ladda upp denna fil då den är skrivskyddad på servern, återställer - - + + Not allowed to remove, restoring Inte behörig att radera, återställer - + Local files and share folder removed. Lokala filer och mappar som är delade är borttagna. - + Move not allowed, item restored Det gick inte att genomföra flytten, objektet återställs - + Move not allowed because %1 is read-only Det gick inte att genomföra flytten då %1 är skrivskyddad - + the destination destinationen - + the source källan diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index 3d85fc164..d25b981f9 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -385,29 +385,29 @@ Total time left %5 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1299,27 +1299,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1418,18 +1418,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1531,16 +1531,27 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2038,69 +2049,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 0e9c78fbf..4cd9ae9d0 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -386,12 +386,12 @@ Toplam kalan süre: %5 Eşitleme Etkinliği - + Could not read system exclude file Sistem hariç tutulma dosyası okunamadı - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Bu, klasörün sessizce yeniden yapılandırılması veya tüm dosyaların el il Bu işlemi gerçekleştirmek istediğinize emin misiniz? - + Remove All Files? Tüm Dosyalar Kaldırılsın mı? - + Remove all files Tüm dosyaları kaldır - + Keep files Dosyaları koru @@ -1306,27 +1306,27 @@ Kullanmanız önerilmez. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Eşitleme kullanıcı tarafından iptal edildi. - + No E-Tag received from server, check Proxy/Gateway Sunucudan E-Etiket alınamadı, Vekil sunucu/Ağ geçidini denetleyin. - + We received a different E-Tag for resuming. Retrying next time. Devam etmek üzere farklı bir E-Etiket aldık. Sonraki işlemde yeniden denenecek. - + Server returned wrong content-range Sunucu yanlış içerik aralığı döndürdü - + File %1 can not be downloaded because of a local file name clash! %1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! @@ -1425,18 +1425,18 @@ Kullanmanız önerilmez. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Eşitleme sırasında yerel dosya değişti, tamamen ulaştıktan sonra bir kez eşitlenecek - + Sync was aborted by user. Eşitleme kullanıcı tarafından iptal edildi. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Dosya yerel olarak düzenlendi ancak salt okunur paylaşımın bir parçası. Geri yüklendi ve düzenlemeniz çakışan dosyada. @@ -1538,17 +1538,26 @@ Kullanmanız önerilmez. Eşitleme durumu panoya kopyalandı. - - Currently no files are ignored because of previous errors. - Önceki hata koşullarından dolayı yoksayılmış dosya yok. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. - %n dosya önceki hatalar nedeniyle yoksayıldı. -Tekrar eşitleyi deneyin.em.%n dosya önceki hatalar nedeniyle yoksayıldı. -Tekrar eşitleyi deneyin.em. + + + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + @@ -2049,69 +2058,69 @@ Tekrar eşitleyi deneyin.em. Dosya, çapraz platform arasında eşitlenemeyecek karakterler içeriyor. - + Unable to initialize a sync journal. Bir eşitleme günlüğü başlatılamadı. - + Cannot open the sync journal Eşitleme günlüğü açılamıyor - - + + Ignored because of the "choose what to sync" blacklist "Eşitlenecekleri seçin" kara listesinde olduğundan yoksayıldı. - + Not allowed because you don't have permission to add sub-directories in that directory Bu dizine alt dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add parent directory Üst dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add files in that directory Bu dizine dosya ekleme yetkiniz olmadığından izin verilmedi - + Not allowed to upload this file because it is read-only on the server, restoring Sunucuda salt okunur olduğundan, bu dosya yüklenemedi, geri alınıyor - - + + Not allowed to remove, restoring Kaldırmaya izin verilmedi, geri alınıyor - + Local files and share folder removed. Yerel dosyalar ve paylaşım klasörü kaldırıldı. - + Move not allowed, item restored Taşımaya izin verilmedi, öge geri alındı - + Move not allowed because %1 is read-only %1 salt okunur olduğundan taşımaya izin verilmedi - + the destination hedef - + the source kaynak diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 61c5009a5..8af55abd1 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -386,12 +386,12 @@ Total time left %5 Журнал синхронізації - + Could not read system exclude file Неможливо прочитати виключений системний файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Ви дійсно бажаєте продовжити цю операцію? - + Remove All Files? Видалити усі файли? - + Remove all files Видалити усі файли - + Keep files Зберегти файли @@ -1306,27 +1306,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Синхронізація перервана користувачем. - + No E-Tag received from server, check Proxy/Gateway Не отримано E-Tag від серверу, перевірте мережеві налаштування (проксі, шлюз) - + We received a different E-Tag for resuming. Retrying next time. Ми отримали інший E-Tag для відновлення. Спробуйте ще раз пізніше. - + Server returned wrong content-range Сервер повернув невірний content-range - + File %1 can not be downloaded because of a local file name clash! Файл %1 не завантажено, через локальний конфлікт ім'я! @@ -1425,18 +1425,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely Локальний файл змінився під час синхронізації, повторюємо процес - + Sync was aborted by user. Синхронізація перервана користувачем. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Файл було змінено локально, але він розташований в теці з правами лише на перегляд. Файл відновлено, а ваші зміни розташовані в теці конфліктів. @@ -1538,16 +1538,27 @@ It is not advisable to use it. Протокол синхронізації був скопійований в буфер обміну. - - Currently no files are ignored because of previous errors. - На даний час, проігноровані файли відсутні через помилки. + + Currently no files are ignored because of previous errors and no downloads are in progress. + - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2047,69 +2058,69 @@ It is not advisable to use it. Файл містить недопустимі символи, через це синхронізація між платформами неможлива. - + Unable to initialize a sync journal. Не вдалося ініціалізувати протокол синхронізації. - + Cannot open the sync journal Не вдається відкрити протокол синхронізації - - + + Ignored because of the "choose what to sync" blacklist Ігнорується через чорний список в "обрати що синхронізувати" - + Not allowed because you don't have permission to add sub-directories in that directory Не дозволено через відсутність прав на додавання підкаталогів в цій теці. - + Not allowed because you don't have permission to add parent directory Не дозволено через відсутність прав на додавання батьківської теки. - + Not allowed because you don't have permission to add files in that directory Не дозволено через відсутність прав на додавання файлів в цю теку. - + Not allowed to upload this file because it is read-only on the server, restoring Не дозволено завантажувати цей файл, оскільки він має дозвіл лише на перегляд, відновлюємо - - + + Not allowed to remove, restoring Не дозволено видаляти, відновлюємо - + Local files and share folder removed. Локальні файли та теки в загальному доступі було видалено. - + Move not allowed, item restored Переміщення не дозволено, елемент відновлено - + Move not allowed because %1 is read-only Переміщення не дозволено, оскільки %1 помічений тільки для перегляду - + the destination призначення - + the source джерело diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index 39b739602..4678e4766 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -385,12 +385,12 @@ Total time left %5 同步活动 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? 你确定执行该操作吗? - + Remove All Files? 删除所有文件? - + Remove all files 删除所有文件 - + Keep files 保持所有文件 @@ -1303,27 +1303,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. 同步被用户撤销。 - + No E-Tag received from server, check Proxy/Gateway 未能收到来自服务器的 E-Tag,请检查代理/网关 - + We received a different E-Tag for resuming. Retrying next time. 我们收到了不同的恢复 E-Tag,将在下次尝试。 - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1422,18 +1422,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. 同步被用户撤销。 - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1535,16 +1535,27 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2044,69 +2055,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. 无法初始化同步日志 - + Cannot open the sync journal 无法打开同步日志 - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 8cbffb9f5..8352b343d 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -385,29 +385,29 @@ Total time left %5 同步啟用 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? 移除所有檔案? - + Remove all files 移除所有檔案 - + Keep files 保留檔案 @@ -1299,27 +1299,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1418,18 +1418,18 @@ It is not advisable to use it. Mirall::PropagateUploadFileLegacy - - + + Local file changed during sync, syncing once it arrived completely - + Sync was aborted by user. - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. @@ -1531,16 +1531,27 @@ It is not advisable to use it. - - Currently no files are ignored because of previous errors. + + Currently no files are ignored because of previous errors and no downloads are in progress. - + %n files are ignored because of previous errors. - Try to sync these again. + + + + %n files are partially downloaded. + + + + + + Try to sync these again. + + Mirall::SelectiveSyncDialog @@ -2038,69 +2049,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source From 7c034b427ed6b144a0d0e9a10d04ce1e2037d3f0 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Fri, 7 Nov 2014 14:52:31 +0100 Subject: [PATCH 06/87] Handle invalid handle & fix an issue found during code review --- src/mirall/folderwatcher_win.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/mirall/folderwatcher_win.cpp b/src/mirall/folderwatcher_win.cpp index 628775472..76f687709 100644 --- a/src/mirall/folderwatcher_win.cpp +++ b/src/mirall/folderwatcher_win.cpp @@ -35,18 +35,25 @@ void WatcherThread::run() NULL ); + if (_handle == INVALID_HANDLE_VALUE) + { + qDebug() << Q_FUNC_INFO << "Failed to set up a watch for" << _path << ", stopping watcher!"; + FindCloseChangeNotification(_handle); + _handle = 0; + return; + } + size_t bufsize = 4096; size_t maxlen = 4096; while(true) { char fileNotify[bufsize]; - // TODO: handle CreateFileW failure FILE_NOTIFY_INFORMATION *pFileNotify = (FILE_NOTIFY_INFORMATION*)fileNotify; DWORD dwBytesReturned = 0; SecureZeroMemory(pFileNotify, bufsize); if(ReadDirectoryChangesW( _handle, (LPVOID)pFileNotify, bufsize, true, - FILE_NOTIFY_CHANGE_LAST_WRITE | + FILE_NOTIFY_CHANGE_FILE_NAME | FILE_NOTIFY_CHANGE_DIR_NAME | FILE_NOTIFY_CHANGE_LAST_WRITE, &dwBytesReturned, NULL, NULL)) From 260c8e022758eca3a87bfef333165e9fc8a91a6f Mon Sep 17 00:00:00 2001 From: Volkan Gezer Date: Fri, 7 Nov 2014 17:51:15 +0100 Subject: [PATCH 07/87] fix typo --- src/libsync/syncengine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libsync/syncengine.cpp b/src/libsync/syncengine.cpp index d293cc011..074905608 100644 --- a/src/libsync/syncengine.cpp +++ b/src/libsync/syncengine.cpp @@ -180,7 +180,7 @@ QString SyncEngine::csyncErrorToString(CSYNC_STATUS err) errStr = tr("Aborted by the user"); break; case CSYNC_STATUS_SERVICE_UNAVAILABLE: - errStr = tr("The mounted directory is temporary not available on the server"); + errStr = tr("The mounted directory is temporarily not available on the server"); break; default: errStr = tr("An internal error number %1 happened.").arg( (int) err ); From b8cb180e4b42d5ca09ed81530a419c84ef49c344 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sat, 8 Nov 2014 01:25:22 -0500 Subject: [PATCH 08/87] [tx-robot] updated from transifex --- translations/mirall_cs.ts | 14 ++++++++++---- translations/mirall_de.ts | 10 ++++++---- translations/mirall_es.ts | 12 ++++++++---- translations/mirall_fr.ts | 16 ++++++++++------ translations/mirall_ja.ts | 8 +++++--- translations/mirall_sl.ts | 10 +++++----- translations/mirall_tr.ts | 16 ++++++++++------ 7 files changed, 54 insertions(+), 32 deletions(-) diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 8a4ca1242..83c2127bf 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -1540,24 +1540,30 @@ Nedoporučuje se jí používat. Currently no files are ignored because of previous errors and no downloads are in progress. - + V současné době nejsou na černé listině žádné soubory kvůli předchozím chybovým stavům a neprobíhá žádné stahování. %n files are ignored because of previous errors. - + %n soubor je ignorován kvůli předchozím chybovým hlášením. +%n soubory jsou ignorovány kvůli předchozím chybovým hlášením. +%n souborů je ignorováno kvůli předchozím chybovým hlášením. + %n files are partially downloaded. - + %n soubor je částečně stažený. +%n soubory jsou částečně stažené. +%n souborů je částečně staženo. + Try to sync these again. - + Zkuste je znovu synchronizovat. diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 36c74d922..2061c741e 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -1541,24 +1541,26 @@ Es ist nicht ratsam, diese zu benutzen. Currently no files are ignored because of previous errors and no downloads are in progress. - + Aktuell werden keine Dateien, aufgrund vorheriger Fehler und keine laufenden Downloads, ignoriert. %n files are ignored because of previous errors. - + %n Datei wird aufgrund vorheriger Fehler ignoriert.%n Dateien werden aufgrund vorheriger Fehler ignoriert. + %n files are partially downloaded. - + %n Datei ist teilweise heruntergeladen.%n Dateien sind teilweise heruntergeladen. + Try to sync these again. - + Versuchen, diese nochmals zu synchronisieren. diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 7fc189346..92ca5e7cd 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -1540,24 +1540,28 @@ No se recomienda usarlo. Currently no files are ignored because of previous errors and no downloads are in progress. - + Actualmente no hay archivos ignorados debido a errores previos y a que no hay descargas en progreso. %n files are ignored because of previous errors. - + %n Archivos han sido ignorados debido a errores previos. +%n Archivos han sido ignorados debido a errores previos. + %n files are partially downloaded. - + %n archivos han sido parcialmente descargados. +%n archivos han sido parcialmente descargados. + Try to sync these again. - + Intentar sincronizar de nuevo diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 546952565..5520b89bd 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -14,7 +14,7 @@ &Choose... - &Choisir + &Choisir... @@ -1540,24 +1540,28 @@ Il est déconseillé de l'utiliser. Currently no files are ignored because of previous errors and no downloads are in progress. - + Actuellement aucun fichier n'a été ignoré en raison d'erreurs précédentes, et aucun téléchargement n'est en cours. %n files are ignored because of previous errors. - + %n fichiers ont été ignorés à cause de précédentes erreurs. +%n fichiers ont été ignorés à cause d'erreurs précédentes. + %n files are partially downloaded. - + Les fichiers %n sont partiellement téléchargés. +%n fichiers sont partiellement téléchargés. + Try to sync these again. - + Essayez de les synchroniser à nouveau. @@ -2201,7 +2205,7 @@ Il est déconseillé de l'utiliser. Calculating quota... - Calcul du quota en cours... + Calcul du quota... diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index 103a4fd88..304080799 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -1538,19 +1538,21 @@ It is not advisable to use it. Currently no files are ignored because of previous errors and no downloads are in progress. - + 以前のエラーのため無視したファイルはありません。進行中のダウンロードもありません。 %n files are ignored because of previous errors. - + 前のエラーのため、%n個のファイルが無視されました。 + %n files are partially downloaded. - + %nファイルのダウンロードが不完全です。 + diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index de6e1d857..736f25f6e 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -1341,7 +1341,7 @@ Uporaba ni priporočljiva. File %1 cannot be saved because of a local file name clash! - + Datoteke %1 ni mogoče shraniti zaradi neskladja z imenom obstoječe datoteke! @@ -1375,12 +1375,12 @@ Uporaba ni priporočljiva. Error removing '%1': %2; - + Napaka odstranjevanja '%1': %2; Could not remove directory '%1'; - + Ni mogoče odstraniti mape '%1'; @@ -1540,7 +1540,7 @@ Uporaba ni priporočljiva. Currently no files are ignored because of previous errors and no downloads are in progress. - + Trenutno zaradi predhodnih napak ni prezrta nobena datoteka in ni dejavnih prejemov. @@ -1557,7 +1557,7 @@ Uporaba ni priporočljiva. Try to sync these again. - + Poskusi s ponovnim usklajevanje. diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 4cd9ae9d0..525a71253 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -1341,7 +1341,7 @@ Kullanmanız önerilmez. File %1 cannot be saved because of a local file name clash! - Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi. + Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi! @@ -1540,24 +1540,28 @@ Kullanmanız önerilmez. Currently no files are ignored because of previous errors and no downloads are in progress. - + Önceki hatalar nedeniyle hiçbir dosya yolsayılmadı ve süren bir indirme yok. %n files are ignored because of previous errors. - + önceki hatalardan dolayı %n dosya yoksayıldı. +önceki hatalardan dolayı %n dosya yoksayıldı. + %n files are partially downloaded. - + %n dosya kısmen karşıya indirilebildi. +%n dosya kısmen karşıya indirilebildi. + Try to sync these again. - + Bunları tekrar eşitlemeyi deneyin. @@ -2025,7 +2029,7 @@ Kullanmanız önerilmez. The mounted directory is temporary not available on the server - Bağlanan dizin geçici olup sunucuda mevcut değildir + Bağlanan dizin geçici olarak sunucuda kullanılamıyor From c9f9388ef6ea13f45c7b5a47bf062736a19af456 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sun, 9 Nov 2014 01:25:21 -0500 Subject: [PATCH 09/87] [tx-robot] updated from transifex --- translations/mirall_it.ts | 12 +++-- translations/mirall_ja.ts | 2 +- translations/mirall_nl.ts | 11 +++-- translations/mirall_pt.ts | 94 +++++++++++++++++++----------------- translations/mirall_pt_BR.ts | 4 +- 5 files changed, 67 insertions(+), 56 deletions(-) diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index c43ee6047..fa135f588 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -1539,24 +1539,28 @@ Non è consigliabile utilizzarlo. Currently no files are ignored because of previous errors and no downloads are in progress. - + Attualmente nessun file è ignorato a causa di errori precedenti e non ci sono scaricamenti in corso. %n files are ignored because of previous errors. - + %n file sono ignorati a causa di errori precedenti. +%n file sono ignorati a causa di errori precedenti. + %n files are partially downloaded. - + %n file sono stati scaricati parzialmente. + %n file sono stati scaricati parzialmente. + Try to sync these again. - + Prova a sincronizzarli nuovamente. diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index 304080799..de013f455 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -1557,7 +1557,7 @@ It is not advisable to use it. Try to sync these again. - + これらをもう一度同期してください。 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index cff33616a..90c14d0dd 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -1540,24 +1540,27 @@ We adviseren deze site niet te gebruiken. Currently no files are ignored because of previous errors and no downloads are in progress. - + Er worden op dit moment geen bestanden genegeerd vanwege eerdere fouten er zijn geen downloads bezig. %n files are ignored because of previous errors. - + %n bestand genegeerd wegens eerdere fouten.%n bestanden genegeerd wegens eerdere fouten. + %n files are partially downloaded. - + %n bestand gedeeltelijk gedownload. +%n bestanden gedeeltelijk gedownload. + Try to sync these again. - + Probeer deze opnieuw te synchen. diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 5f397d225..91077aead 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -9,12 +9,12 @@ Pick a local folder on your computer to sync - Escollha a pasta local a sincronizar + Escolha a pasta local no seu computador para sincronizar &Choose... - &Escolha... + &Escolher ... @@ -32,17 +32,17 @@ Select a remote destination folder - Seleccione a pasta de destino + Selecione a pasta de destino remota Add Folder - Adicionar pasta + Adicionar Pasta Refresh - Actualizar + Atualizar @@ -70,28 +70,28 @@ Edit Ignored Files - Editar ficheiros ignorados + Editar Ficheiros Ignorados Modify Account - Modificar conta + Modificar Conta Account to Synchronize - Conta a sincronizar + Conta a Sincronizar Connected with <server> as <user> - Ligado a <server> como <user> + Conetado com <server> como <user> Pause - Pausa + Pausar @@ -101,17 +101,17 @@ Add Folder... - Adicionar Pasta... + Adicionar Pasta ... Choose What to Sync - Escolher o que sincronizar + Escolher o Que Sincronizar Storage Usage - Utilização do armazenamento + Utilização do Armazenamento @@ -126,12 +126,12 @@ Resume - Resumir + Retomar Confirm Folder Remove - Confirme a remoção da pasta + Confirmar Remover Pasta @@ -141,7 +141,7 @@ Confirm Folder Reset - Confirmar reposição da pasta + Confirmar Repor Pasta @@ -168,12 +168,12 @@ %1 (%3%) of %2 server space in use. - %1 (%3%) de %2 de espaço utilizado. + %1 (%3%) de %2 de espaço do servidor em uso. No connection to %1 at <a href="%2">%3</a>. - Sem ligação a %1 em <a href="%2">%3</a>. + Sem coneção para %1 em <a href="%2">%3</a>. @@ -183,7 +183,7 @@ Sync Running - A sincronização está a decorrer + Sincronização em Execução @@ -204,29 +204,29 @@ %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - %1 %2 (%3 de %4) %5 faltando a uma taxa de %6/s + %1 %2 (%3 de %4) %5 restante, a uma taxa de %6/s %1 of %2, file %3 of %4 Total time left %5 - - + %1 of %2, ficheiro %3 de %4 +Tempo total restante %5 Connected to <a href="%1">%2</a>. - Conectado a <a href="%1">%2</a>. + Conetado a <a href="%1">%2</a>. Connected to <a href="%1">%2</a> as <i>%3</i>. - Conectado a <a href="%1">%2</a> como <i>%3</i>. + Conetado a <a href="%1">%2</a> como <i>%3</i>. Currently there is no storage usage information available. - Histórico de utilização de armazenamento não disponível. + Atualmente não está disponível nenhuma informação da utilização do armazenamento. @@ -234,22 +234,22 @@ Total time left %5 Authentication Required - Autenticação necessária + Autenticação Requerida Enter username and password for '%1' at %2. - Introduza o nome de utilizador e password para '%1' em %2. + Insira o nome de utilizador e a senha para '%1' em %2. &User: - &Utilizador + &Utilizador: &Password: - Password&: + &Senha: @@ -273,7 +273,7 @@ Total time left %5 Unable to connect to %1 - Não foi possível ligar a %1 + Não foi possível conetar a %1 @@ -291,7 +291,7 @@ Total time left %5 Unable to create csync-context - Impossível criar 'csync-context' + Não é possível criar 'csync-context' @@ -306,7 +306,7 @@ Total time left %5 %1 is not readable. - Não é possível ler %1 + %1 não é legível. @@ -383,7 +383,7 @@ Total time left %5 Sync Activity - Actividade de sincronicação + Atividade de Sincronização @@ -705,12 +705,12 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Enter Password - Introduza a Palavra-passe + Insira a Senha Please enter %1 password for user '%2': - Por favor introduza %1 password para o utilizador '%2': + Por favor, insira %1 senha para o utilizador '%2': @@ -957,7 +957,7 @@ Itens verificados também serão removidos se evitarem que um diretório seja re Password for proxy server - Password para o servidor proxy. + Senha para o servidor proxy. @@ -1537,24 +1537,28 @@ It is not advisable to use it. Currently no files are ignored because of previous errors and no downloads are in progress. - + Atualmente os ficheiros não são ignorados devido a erros anteriores e não existem transferências em progresso %n files are ignored because of previous errors. - + é ignorado %n ficheiro devido a erros anteriores. +são ignorados %n ficheiros devido a erros anteriores. + %n files are partially downloaded. - + %n ficheiro foi parcialmente transferido. +%n ficheiros foram parcialmente transferidos. + Try to sync these again. - + Tente sincronizar estes também. @@ -2362,7 +2366,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n &Password - &Password + &Senha @@ -2421,22 +2425,22 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n &Password: - Password&: + &Senha: Enter the ownCloud password. - Introduza a sua palavra-passe do ownCloud + Introduza a sua senha do ownCloud Do not allow the local storage of the password. - Não permitir que a palavra-passe seja guardada. + Não permitir que a senha seja guardada localmente. &Do not store password on local machine - &Não guardar a password + &Não guardar a senha na máquina local diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index 90ec8a57c..d1bec6a96 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -1538,7 +1538,7 @@ It is not advisable to use it. Currently no files are ignored because of previous errors and no downloads are in progress. - + Atualmente não há arquivos ignorados devido a erros anteriores e nenhum downloads está em andamento. @@ -1555,7 +1555,7 @@ It is not advisable to use it. Try to sync these again. - + Tente sincronizar estes novamente. From f9dfdd58df8c6c8cedaa71bac57e9ef7cd105bb0 Mon Sep 17 00:00:00 2001 From: hefee Date: Sun, 9 Nov 2014 16:59:01 +0100 Subject: [PATCH 10/87] Fixing indent and make nautilus script python3 compatible. --- shell_integration/nautilus/syncstate.py | 54 ++++++++++++------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/shell_integration/nautilus/syncstate.py b/shell_integration/nautilus/syncstate.py index 3d0cc0488..93fec41bf 100755 --- a/shell_integration/nautilus/syncstate.py +++ b/shell_integration/nautilus/syncstate.py @@ -41,18 +41,18 @@ class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.Info sock_file = os.environ["XDG_RUNTIME_DIR"]+postfix print ("XXXX " + sock_file + " <=> " + postfix) if sock_file != postfix: - try: - print("Socket File: "+sock_file) - self.sock.connect(sock_file) - self.connected = True - print("Setting connected to %r" % self.connected ) - self.watch_id = GObject.io_add_watch(self.sock, GObject.IO_IN, self.handle_notify) - do_reconnect = False - except Exception, e: - print("Could not connect to unix socket." + str(e)) - else: - print("Sock-File not valid: "+sock_file) - except Exception, e: + try: + print("Socket File: "+sock_file) + self.sock.connect(sock_file) + self.connected = True + print("Setting connected to %r" % self.connected ) + self.watch_id = GObject.io_add_watch(self.sock, GObject.IO_IN, self.handle_notify) + do_reconnect = False + except Exception as e: + print("Could not connect to unix socket." + str(e)) + else: + print("Sock-File not valid: "+sock_file) + except Exception as e: print("Connect could not be established, try again later " + str(e)) self.sock.close() # print("Returning %r" % do_reconnect) @@ -75,7 +75,7 @@ class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.Info return None def askForOverlay(self, file): - # print("Asking for overlay for "+file) + # print("Asking for overlay for "+file) if os.path.isdir(file): folderStatus = self.sendCommand("RETRIEVE_FOLDER_STATUS:"+file+"\n"); @@ -85,15 +85,15 @@ class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.Info def invalidate_items_underneath(self, path): update_items = [] if not self.nautilusVFSFile_table: - self.askForOverlay(path) - else: - for p in self.nautilusVFSFile_table: - if p == path or p.startswith(path): - item = self.nautilusVFSFile_table[p]['item'] - update_items.append(item) + self.askForOverlay(path) + else: + for p in self.nautilusVFSFile_table: + if p == path or p.startswith(path): + item = self.nautilusVFSFile_table[p]['item'] + update_items.append(item) - for item in update_items: - item.invalidate_extension_info() + for item in update_items: + item.invalidate_extension_info() # Handles a single line of server respoonse and sets the emblem def handle_server_response(self, l): @@ -118,16 +118,16 @@ class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.Info # file = parts[1] # print "Action for " + file + ": "+parts[0] if action == 'STATUS': - newState = parts[1] + newState = parts[1] emblem = Emblems[newState] if emblem: itemStore = self.find_item_for_file(parts[2]) if itemStore: - if( not itemStore['state'] or newState != itemStore['state'] ): - item = itemStore['item'] - item.add_emblem(emblem) - # print "Setting emblem on " + parts[2]+ "<>"+emblem+"<>" - self.nautilusVFSFile_table[parts[2]] = {'item': item, 'state':newState} + if( not itemStore['state'] or newState != itemStore['state'] ): + item = itemStore['item'] + item.add_emblem(emblem) + # print "Setting emblem on " + parts[2]+ "<>"+emblem+"<>" + self.nautilusVFSFile_table[parts[2]] = {'item': item, 'state':newState} elif action == 'UPDATE_VIEW': # Search all items underneath this path and invalidate them From cde9b3ac856be5bf5c66026e42763a70b1ccef5e Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Mon, 10 Nov 2014 01:25:22 -0500 Subject: [PATCH 11/87] [tx-robot] updated from transifex --- translations/mirall_el.ts | 6 +++--- translations/mirall_nl.ts | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index ea6b7d2a8..49cff216d 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -1376,12 +1376,12 @@ It is not advisable to use it. Error removing '%1': %2; - + Σφάλμα αφαίρεσης '%1': %2; Could not remove directory '%1'; - + Αδυναμία αφαίρεσης καταλόγου '%1'; @@ -1558,7 +1558,7 @@ It is not advisable to use it. Try to sync these again. - + Προσπάθεια για συγχρονισμό αυτών ξανά. diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 90c14d0dd..88521853d 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -2053,7 +2053,7 @@ We adviseren deze site niet te gebruiken. File is listed on the ignore list. - De file is opgenomen op de negeerlijst. + Het bestand is opgenomen op de negeerlijst. @@ -2063,12 +2063,12 @@ We adviseren deze site niet te gebruiken. Unable to initialize a sync journal. - Niet in staat om een synchornisatie journaal te starten. + Niet in staat om een synchronisatie transactielog te starten. Cannot open the sync journal - Kan het sync journal niet openen + Kan het sync transactielog niet openen From ced986e01041270cecf781d5daa82e9dfdb5ea2f Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Tue, 11 Nov 2014 01:25:22 -0500 Subject: [PATCH 12/87] [tx-robot] updated from transifex --- translations/mirall_cs.ts | 8 ++++---- translations/mirall_fi.ts | 12 ++++++------ translations/mirall_fr.ts | 12 ++++++------ 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 83c2127bf..563d8a222 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -198,7 +198,7 @@ Discovering '%1' - Hledám '%1' + Prohledávám '%1' @@ -1380,7 +1380,7 @@ Nedoporučuje se jí používat. Could not remove directory '%1'; - Nezdařilo se odstranění adresáře '%1'; + Nepodařilo se odstranit adresář '%1'; @@ -1576,7 +1576,7 @@ Nedoporučuje se jí používat. Unchecked folders will be <b>removed</b> from your local file system and will not be synchronized to this computer anymore - Neoznačené adresáře budou <b>odstraněny</b> z lokálního souborového systému a nebudou již synchronizovány na tento počítač + Neoznačené adresáře budou <b>odstraněny</b> z místního souborového systému a nebudou již synchronizovány na tento počítač @@ -2262,7 +2262,7 @@ Nedoporučuje se jí používat. Discovering '%1' - Hledám '%1' + Prohledávám '%1' diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 295e9afe1..dcf2dcf8a 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -121,7 +121,7 @@ <b>Note:</b> Some folders, including network mounted or shared folders, might have different limits. - <b>Huomio:</b> Joillakin kansioilla, mukaan lukien verkon yli liitetyt tai jaetut kansiot, voivat olla erilaisten rajoitusten piirissä. + <b>Huomio:</b> Jotkin kansiot, mukaan lukien verkon yli liitetyt tai jaetut kansiot, voivat olla eri rajoitusten piirissä. @@ -216,7 +216,7 @@ Aikaa jäljellä yhteensä %5 Connected to <a href="%1">%2</a>. - Muodosta yhteys - <a href="%1">%2</a>. + Muodostetty yhteys kohteeseen <a href="%1">%2</a>. @@ -487,7 +487,7 @@ Are you sure you want to perform this operation? Syncing all files in your account with - + Synkronoidaan kaikki tilisi tiedostot polkuun @@ -1062,7 +1062,7 @@ saattaa kysyä lisäoikeuksia toimenpiteen aikana. Update advanced setup - + Lisäasetuksien päivitys @@ -1521,7 +1521,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Copy the activity list to the clipboard. - + Kopioi toimilista leikepöydälle. @@ -1566,7 +1566,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Unchecked folders will be <b>removed</b> from your local file system and will not be synchronized to this computer anymore - + Ilman valintaa olevat kansiot <b>poistetaan</b> paikallisesta tiedostojärjestelmästä, eikä niitä synkronoida enää jatkossa tämän tietokoneen kanssa diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 5520b89bd..36231ec77 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -311,7 +311,7 @@ Temps restant total %5 %1: %2 - %1: %2 + %1 : %2 @@ -494,7 +494,7 @@ Voulez-vous réellement effectuer cette opération ? Remote path: %1 - Chemin distant: %1 + Chemin distant : %1 @@ -711,7 +711,7 @@ Voulez-vous réellement effectuer cette opération ? Please enter %1 password for user '%2': - Veuillez entrer %1 mot de passe pour l'utilisateur '%2': + Veuillez entrer %1 mot de passe pour l'utilisateur '%2' : @@ -1148,7 +1148,7 @@ Il est déconseillé de l'utiliser. <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> - <font color="green">Connecté avec succès à %1: %2 version %3 (%4)</font><br/><br/> + <font color="green">Connecté avec succès à %1 : %2 version %3 (%4)</font><br/><br/> @@ -1184,7 +1184,7 @@ Il est déconseillé de l'utiliser. Failed to connect to %1 at %2:<br/>%3 - Échec de la connexion à %1 pour %2:<br/>%3 + Échec de la connexion à %1 pour %2 :<br/>%3 @@ -2134,7 +2134,7 @@ Il est déconseillé de l'utiliser. %1: %2 - %1: %2 + %1 : %2 From b04cb23ed597f4b2d2ee9301e627f786b49e7ded Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 11 Nov 2014 16:37:30 +0100 Subject: [PATCH 13/87] t8.pl: fix the test for me On localhost, the other file (the bigger one) was downloaded first --- csync/tests/ownCloud/t8.pl | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/csync/tests/ownCloud/t8.pl b/csync/tests/ownCloud/t8.pl index 4851f75d6..1a0557d7f 100755 --- a/csync/tests/ownCloud/t8.pl +++ b/csync/tests/ownCloud/t8.pl @@ -127,10 +127,9 @@ glob_put( "$tmpdir2/*", "parallel" ); csync(); -# We assume the smaller file finished first, blocking -# the second file from being saved. -assert( !-e localDir() . 'parallel/FILE.dat' ); -assert( -e localDir() . 'parallel/file.dat' ); +# only one file must exist +assert( (!-e localDir() . 'parallel/FILE.dat' ) or (!-e localDir() . 'parallel/file.dat') ); +assert( (-e localDir() . 'parallel/FILE.dat' ) or (-e localDir() . 'parallel/file.dat') ); cleanup(); system("rm -r " . $tmpdir); From 8993af4378566d0328b395387eb67936e32fd9e4 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Wed, 12 Nov 2014 00:32:28 +0100 Subject: [PATCH 14/87] Bump version in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2ced9c8c9..6595b2a26 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ It uses OCSync as its syncing backend. ## Building the source code Please refer to doc/building.rst, or -[Building the Client](http://doc.owncloud.org/desktop/1.5/building.html) +[Building the Client](http://doc.owncloud.org/desktop/1.7/building.html) in the ownCloud client manual. ## Authors From 1ba1bdec2d556b9b9ad37c05810dc73335d10e58 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Wed, 12 Nov 2014 01:25:29 -0500 Subject: [PATCH 15/87] [tx-robot] updated from transifex --- translations/mirall_et.ts | 11 +++++++---- translations/mirall_uk.ts | 24 +++++++++++++++--------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 3fb61886d..710928c29 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -1540,24 +1540,27 @@ Selle kasutamine pole soovitatav. Currently no files are ignored because of previous errors and no downloads are in progress. - + Hetkel ei ignoreerita ühtegi faili eelnenud vigade tõttu ja ühtegi allalaadimist ei toimu %n files are ignored because of previous errors. - + %n fail on ignoreeritud eelnenud vigade tõttu%n faili on ignoreeritud eelnenud vigade tõttu + %n files are partially downloaded. - + %n fail on osaliselt allalaaditud +%n fail on osaliselt allalaaditud + Try to sync these again. - + Proovi neid uuesti sünkroniseerida. diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 8af55abd1..afc8f3551 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -1341,7 +1341,7 @@ It is not advisable to use it. File %1 cannot be saved because of a local file name clash! - + Файл %1 не збережено, через локальний конфлікт ім'я! @@ -1375,12 +1375,12 @@ It is not advisable to use it. Error removing '%1': %2; - + Помилка при видалені '%1': %2; Could not remove directory '%1'; - + Неможливо видалити теку '%1'; @@ -1540,24 +1540,30 @@ It is not advisable to use it. Currently no files are ignored because of previous errors and no downloads are in progress. - + На даний час жоден файл не ігнорується, через попередні помилки, та немає активних завантажень. %n files are ignored because of previous errors. - + %n файл проігноровано, через попередні помилки. +%n файлів проігноровано, через попередні помилки. +%n файлів проігноровано, через попередні помилки. + %n files are partially downloaded. - + %n файл частково завантажений. +%n файли частково завантажені. +%n файли частково завантажені. + Try to sync these again. - + Спробуйте синхронізувати ще раз. @@ -1570,7 +1576,7 @@ It is not advisable to use it. Unchecked folders will be <b>removed</b> from your local file system and will not be synchronized to this computer anymore - + Не позначені теки будуть <b>видалені</b> з вашої системи та більше не будуть синхронізуватися @@ -2025,7 +2031,7 @@ It is not advisable to use it. The mounted directory is temporary not available on the server - + Змонтована тека тимчасово недоступна на сервері From 30479cc5a241358107a22e30a8ac3d79d5c5bc48 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Tue, 11 Nov 2014 16:44:12 +0100 Subject: [PATCH 16/87] Wizard: Properly show error message --- src/wizard/owncloudsetuppage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wizard/owncloudsetuppage.cpp b/src/wizard/owncloudsetuppage.cpp index 8f4cb7245..d49e78f9c 100644 --- a/src/wizard/owncloudsetuppage.cpp +++ b/src/wizard/owncloudsetuppage.cpp @@ -224,7 +224,7 @@ void OwncloudSetupPage::setErrorString( const QString& err ) _ui.errorLabel->setVisible(false); } else { if (_ui.leUrl->text().startsWith("https://")) { - QString msg = tr("Could not connect securely. Do you want to connect unencrypted instead (not recommended)?").arg(err); + QString msg = tr("Could not connect securely:\n\n%1\n\nDo you want to connect unencrypted instead (not recommended)?").arg(err); QString title = tr("Connection failed"); if (QMessageBox::question(this, title, msg, QMessageBox::Yes, QMessageBox::No) == QMessageBox::Yes) { QUrl url(_ui.leUrl->text()); From 348b7bf4ebe74404212712302a49147f64bb3d21 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Wed, 12 Nov 2014 09:21:05 +0100 Subject: [PATCH 17/87] SyncEngine: Output versions used --- src/mirall/syncengine.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mirall/syncengine.cpp b/src/mirall/syncengine.cpp index ece2e7ccd..14c3de729 100644 --- a/src/mirall/syncengine.cpp +++ b/src/mirall/syncengine.cpp @@ -544,6 +544,8 @@ void SyncEngine::startSync() qDebug() << "=====sync with existing DB"; } + qDebug() << "=====Using Qt" << qVersion() << "with" << QSslSocket::sslLibraryVersionString().toUtf8().data(); + fileRecordCount = _journal->getFileRecordCount(); // this creates the DB if it does not exist yet bool isUpdateFrom_1_5 = _journal->isUpdateFrom_1_5(); From f1432992d3ac412d30947c08e11995433a68b053 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Thu, 13 Nov 2014 01:25:30 -0500 Subject: [PATCH 18/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 38 +++++++++++++----------- translations/mirall_cs.ts | 38 +++++++++++++----------- translations/mirall_de.ts | 38 +++++++++++++----------- translations/mirall_el.ts | 38 +++++++++++++----------- translations/mirall_en.ts | 36 ++++++++++++----------- translations/mirall_es.ts | 38 +++++++++++++----------- translations/mirall_es_AR.ts | 36 ++++++++++++----------- translations/mirall_et.ts | 38 +++++++++++++----------- translations/mirall_eu.ts | 38 +++++++++++++----------- translations/mirall_fa.ts | 36 ++++++++++++----------- translations/mirall_fi.ts | 38 +++++++++++++----------- translations/mirall_fr.ts | 56 +++++++++++++++++++----------------- translations/mirall_gl.ts | 38 +++++++++++++----------- translations/mirall_hu.ts | 36 ++++++++++++----------- translations/mirall_it.ts | 38 +++++++++++++----------- translations/mirall_ja.ts | 38 +++++++++++++----------- translations/mirall_nl.ts | 38 +++++++++++++----------- translations/mirall_pl.ts | 38 +++++++++++++----------- translations/mirall_pt.ts | 38 +++++++++++++----------- translations/mirall_pt_BR.ts | 38 +++++++++++++----------- translations/mirall_ru.ts | 38 +++++++++++++----------- translations/mirall_sk.ts | 38 +++++++++++++----------- translations/mirall_sl.ts | 38 +++++++++++++----------- translations/mirall_sv.ts | 38 +++++++++++++----------- translations/mirall_th.ts | 36 ++++++++++++----------- translations/mirall_tr.ts | 38 +++++++++++++----------- translations/mirall_uk.ts | 38 +++++++++++++----------- translations/mirall_zh_CN.ts | 36 ++++++++++++----------- translations/mirall_zh_TW.ts | 36 ++++++++++++----------- 29 files changed, 611 insertions(+), 495 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 93e744aed..51f5ecb47 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -1113,8 +1113,12 @@ No és aconsellada usar-la. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - No s'ha pogut connectar de forma segura. Voleu connectar sense encriptació (no recomanat)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ No és aconsellada usar-la. El fitxer conté caràcters no vàlids que no es poden sincronitzar entre plataformes. - + Unable to initialize a sync journal. No es pot inicialitzar un periòdic de sincronització - + Cannot open the sync journal No es pot obrir el diari de sincronització - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory No es permet perquè no teniu permisos per afegir subcarpetes en aquesta carpeta - + Not allowed because you don't have permission to add parent directory No es permet perquè no teniu permisos per afegir una carpeta inferior - + Not allowed because you don't have permission to add files in that directory No es permet perquè no teniu permisos per afegir fitxers en aquesta carpeta - + Not allowed to upload this file because it is read-only on the server, restoring No es permet pujar aquest fitxer perquè només és de lectura en el servidor, es restaura - - + + Not allowed to remove, restoring No es permet l'eliminació, es restaura - + Local files and share folder removed. Fitxers locals i carpeta compartida esborrats. - + Move not allowed, item restored No es permet moure'l, l'element es restaura - + Move not allowed because %1 is read-only No es permet moure perquè %1 només és de lectura - + the destination el destí - + the source l'origen diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 563d8a222..fc8dfa9f1 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -1113,8 +1113,12 @@ Nedoporučuje se jí používat. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Nemohu se připojit zabezpečeně. Přejete si místo toho připojit nezabezpečeně (nedoporučuje se)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2064,69 +2068,69 @@ Nedoporučuje se jí používat. Soubor obsahuje alespoň jeden neplatný znak, který narušuje synchronizaci v prostředí více platforem. - + Unable to initialize a sync journal. Nemohu inicializovat synchronizační žurnál. - + Cannot open the sync journal Nelze otevřít synchronizační žurnál - - + + Ignored because of the "choose what to sync" blacklist Ignorováno podle nastavení "vybrat co synchronizovat" - + Not allowed because you don't have permission to add sub-directories in that directory Není povoleno, protože nemáte oprávnění vytvářet podadresáře v tomto adresáři. - + Not allowed because you don't have permission to add parent directory Není povoleno, protože nemáte oprávnění vytvořit rodičovský adresář - + Not allowed because you don't have permission to add files in that directory Není povoleno, protože nemáte oprávnění přidávat soubory do tohoto adresáře - + Not allowed to upload this file because it is read-only on the server, restoring Není povoleno nahrát tento soubor, protože je na serveru uložen pouze pro čtení, obnovuji - - + + Not allowed to remove, restoring Odstranění není povoleno, obnovuji - + Local files and share folder removed. Místní soubory a sdílený adresář byly odstraněny. - + Move not allowed, item restored Přesun není povolen, položka obnovena - + Move not allowed because %1 is read-only Přesun není povolen, protože %1 je pouze pro čtení - + the destination cílové umístění - + the source zdroj diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 2061c741e..9e9a207e1 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -1114,8 +1114,12 @@ Es ist nicht ratsam, diese zu benutzen. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Die Verbindung kann nicht sicher hergestellt werden. Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2061,69 +2065,69 @@ Es ist nicht ratsam, diese zu benutzen. Die Datei beinhaltet ungültige Zeichen und kann nicht plattformübergreifend synchronisiert werden. - + Unable to initialize a sync journal. Synchronisationsbericht konnte nicht initialisiert werden. - + Cannot open the sync journal Synchronisationsbericht kann nicht geöffnet werden - - + + Ignored because of the "choose what to sync" blacklist Aufgrund der »Zu synchronisierende Elemente auswählen«-Sperrliste ignoriert - + Not allowed because you don't have permission to add sub-directories in that directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Unterordnern haben - + Not allowed because you don't have permission to add parent directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Hauptordnern haben - + Not allowed because you don't have permission to add files in that directory Nicht erlaubt, da Sie keine Rechte zum Hinzufügen von Dateien in diesen Ordner haben - + Not allowed to upload this file because it is read-only on the server, restoring Das Hochladen dieser Datei ist nicht erlaubt, da die Datei auf dem Server schreibgeschützt ist, Wiederherstellung - - + + Not allowed to remove, restoring Löschen nicht erlaubt, Wiederherstellung - + Local files and share folder removed. Lokale Dateien und Freigabeordner wurden entfernt. - + Move not allowed, item restored Verschieben nicht erlaubt, Element wiederhergestellt - + Move not allowed because %1 is read-only Verschieben nicht erlaubt, da %1 schreibgeschützt ist - + the destination Das Ziel - + the source Die Quelle diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 49cff216d..a95751c76 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -1114,8 +1114,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Αδυναμία ασφαλούς σύνδεσης. Θα θέλατε να συνδεθείτε χωρίς κρυπτογράφηση παρ'όλα αυτά (δεν προτείνεται); + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2059,69 +2063,69 @@ It is not advisable to use it. Το αρχείο περιέχει άκυρους χαρακτήρες που δεν μπορούν να συγχρονιστούν σε όλα τα συστήματα. - + Unable to initialize a sync journal. Αδυναμία προετοιμασίας αρχείου συγχρονισμού. - + Cannot open the sync journal Αδυναμία ανοίγματος του αρχείου συγχρονισμού - - + + Ignored because of the "choose what to sync" blacklist Αγνοήθηκε εξαιτίας της μαύρης λίστας "διάλεξε τι να συγχρονιστεί" - + Not allowed because you don't have permission to add sub-directories in that directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε υπο-καταλόγους σε αυτό τον κατάλογο - + Not allowed because you don't have permission to add parent directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε στο γονεϊκό κατάλογο - + Not allowed because you don't have permission to add files in that directory Δεν επιτρέπεται επειδή δεν έχεται δικαιώματα να προσθέσετε αρχεία σε αυτόν τον κατάλογο - + Not allowed to upload this file because it is read-only on the server, restoring Δεν επιτρέπεται να μεταφορτώσετε αυτό το αρχείο επειδή είναι μόνο για ανάγνωση στο διακομιστή, αποκατάσταση σε εξέλιξη - - + + Not allowed to remove, restoring Δεν επιτρέπεται η αφαίρεση, αποκατάσταση σε εξέλιξη - + Local files and share folder removed. Οι τοπικοί φάκελοι και ο φάκελος κοινής χρήσης αφαιρέθηκαν. - + Move not allowed, item restored Η μετακίνηση δεν επιτρέπεται, το αντικείμενο αποκαταστάθηκε - + Move not allowed because %1 is read-only Η μετακίνηση δεν επιτρέπεται επειδή το %1 είναι μόνο για ανάγνωση - + the destination ο προορισμός - + the source η προέλευση diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 7c7cc4f1d..298f24466 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -1108,7 +1108,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2057,69 +2061,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 92ca5e7cd..e16a1d049 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -1113,8 +1113,12 @@ No se recomienda usarlo. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - No se pudo hacer una conexión segura. ¿Desea conectarse de forma insegura (no recomendado)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2062,69 +2066,69 @@ No se recomienda usarlo. El fichero contiene caracteres inválidos que no pueden ser sincronizados con la plataforma. - + Unable to initialize a sync journal. No se pudo inicializar un registro (journal) de sincronización. - + Cannot open the sync journal No es posible abrir el diario de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado por que se encuentra en la lista negra de "elige que vas a sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory No está permitido, porque no tiene permisos para añadir subcarpetas en este directorio. - + Not allowed because you don't have permission to add parent directory No está permitido porque no tiene permisos para añadir un directorio - + Not allowed because you don't have permission to add files in that directory No está permitido, porque no tiene permisos para crear archivos en este directorio - + Not allowed to upload this file because it is read-only on the server, restoring No está permitido subir este archivo porque es de solo lectura en el servidor, restaurando. - - + + Not allowed to remove, restoring No está permitido borrar, restaurando. - + Local files and share folder removed. Se eliminaron los archivos locales y la carpeta compartida. - + Move not allowed, item restored No está permitido mover, elemento restaurado. - + Move not allowed because %1 is read-only No está permitido mover, porque %1 es solo lectura. - + the destination destino - + the source origen diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index 12e2d7ff4..61aacc8d5 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -1110,7 +1110,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2053,69 +2057,69 @@ It is not advisable to use it. El archivo contiene caracteres inválidos que no pueden ser sincronizados entre plataforma. - + Unable to initialize a sync journal. Imposible inicializar un diario de sincronización. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 710928c29..f5acd6a4b 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -1113,8 +1113,12 @@ Selle kasutamine pole soovitatav. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Ei suutnud turvaliselt ühenduda. Soovid minna üle krüpteerimata ühendusele (pole soovitatav)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2061,69 +2065,69 @@ Selle kasutamine pole soovitatav. Fail sisaldab sobimatuid sümboleid, mida ei saa sünkroniseerida erinevate platvormide vahel. - + Unable to initialize a sync journal. Ei suuda lähtestada sünkroniseeringu zurnaali. - + Cannot open the sync journal Ei suuda avada sünkroniseeringu zurnaali - - + + Ignored because of the "choose what to sync" blacklist "Vali, mida sünkroniseerida" musta nimekirja tõttu vahele jäetud - + Not allowed because you don't have permission to add sub-directories in that directory Pole lubatud, kuna sul puuduvad õigused lisada sellesse kataloogi lisada alam-kataloogi - + Not allowed because you don't have permission to add parent directory Pole lubatud, kuna sul puuduvad õigused lisada ülemkataloog - + Not allowed because you don't have permission to add files in that directory Pole lubatud, kuna sul puuduvad õigused sellesse kataloogi faile lisada - + Not allowed to upload this file because it is read-only on the server, restoring Pole lubatud üles laadida, kuna tegemist on ainult-loetava serveriga, taastan - - + + Not allowed to remove, restoring Eemaldamine pole lubatud, taastan - + Local files and share folder removed. Kohalikud failid ja jagatud kaustad eemaldatud. - + Move not allowed, item restored Liigutamine pole lubatud, üksus taastatud - + Move not allowed because %1 is read-only Liigutamien pole võimalik kuna %1 on ainult lugemiseks - + the destination sihtkoht - + the source allikas diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index af1f52f18..dfb30474b 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -1113,8 +1113,12 @@ Ez da gomendagarria erabltzea. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Ezin da modu seguruan konektatu. Nahi duzu enkriptatu gabe konektatu (ez da gomendagarria)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2056,69 +2060,69 @@ Ez da gomendagarria erabltzea. - + Unable to initialize a sync journal. Ezin izan da sinkronizazio egunerokoa hasieratu. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Ezabatzeko baimenik gabe, berrezartzen - + Local files and share folder removed. - + Move not allowed, item restored Mugitzea ez dago baimenduta, elementua berrezarri da - + Move not allowed because %1 is read-only Mugitzea ez dago baimenduta %1 irakurtzeko bakarrik delako - + the destination helburua - + the source jatorria diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index aa1916fad..9bc25f854 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -1106,7 +1106,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2049,69 +2053,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index dcf2dcf8a..cdaec9b6e 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -1109,8 +1109,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Salattua yhteyttä ei voitu muodostaa. Haluatko sen muodostaa salaamattoman yhteyden? (ei suositeltu) + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2054,69 +2058,69 @@ Osoitteen käyttäminen ei ole suositeltavaa. Tiedosto sisältää virheellisiä merkkejä, joiden vuoksi sitä voi synkronoida eri käyttöjärjestelmien välillä. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory Ei sallittu, koska sinulla ei ole oikeutta lisätä tiedostoja kyseiseen kansioon - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Poistaminen ei ole sallittua, palautetaan - + Local files and share folder removed. Paikalliset tiedostot ja jakokansio poistettu. - + Move not allowed, item restored Siirtäminen ei ole sallittua, kohde palautettu - + Move not allowed because %1 is read-only Siirto ei ole sallittu, koska %1 on "vain luku"-tilassa - + the destination kohde - + the source lähde diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 36231ec77..57701c3a1 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -455,7 +455,7 @@ Voulez-vous réellement effectuer cette opération ? Last Sync was successful, but with warnings on individual files. - La dernière synchronisation s'est achevée avec succès mais avec des messages d'avertissement sur des fichiers individuels. + La dernière synchronisation s'est achevée avec succès mais avec des messages d'avertissement à propos de certains fichiers. @@ -614,7 +614,7 @@ Voulez-vous réellement effectuer cette opération ? You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. - Vous êtes déjà en cours de synchronisation de tous vos fichiers. Synchroniser un autre dossier n'est <b>pas</b> possible actuellement. Si vous voulez synchroniser de multiples dossiers, veuillez supprimer la synchronisation en cours du dossier racine. + Vous sychronisez déjà tous vos fichiers. Synchroniser un autre dossier n'est <b>pas</b> possible actuellement. Si vous voulez synchroniser plusieurs dossiers, veuillez supprimer la synchronisation du dossier racine qui est configurée actuellement. @@ -711,7 +711,7 @@ Voulez-vous réellement effectuer cette opération ? Please enter %1 password for user '%2': - Veuillez entrer %1 mot de passe pour l'utilisateur '%2' : + Veuillez entrer le mot de passe %1 pour l'utilisateur '%2' : @@ -1113,8 +1113,12 @@ Il est déconseillé de l'utiliser. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Impossible de se connecter en toute sécurité. Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -1287,7 +1291,7 @@ Il est déconseillé de l'utiliser. Your entire account is synced to the local folder <i>%1</i> - Votre compte est synchronisé intégralement avec le répertoire local <i>%1</i> + Votre compte est intégralement synchronisé avec le répertoire local <i>%1</i> @@ -1328,7 +1332,7 @@ Il est déconseillé de l'utiliser. File %1 can not be downloaded because of a local file name clash! - File %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. + Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. @@ -1336,7 +1340,7 @@ Il est déconseillé de l'utiliser. File %1 can not be downloaded because of a local file name clash! - File %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. + Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. @@ -2062,69 +2066,69 @@ Il est déconseillé de l'utiliser. Le fichier contient des caractères non valides qui ne peuvent être synchronisés entre plate-formes. - + Unable to initialize a sync journal. Impossible d'initialiser un journal de synchronisation. - + Cannot open the sync journal Impossible d'ouvrir le journal de synchronisation - - + + Ignored because of the "choose what to sync" blacklist Ignoré à cause de la liste noire du contenu à synchroniser. - + Not allowed because you don't have permission to add sub-directories in that directory Non autorisé car vous n'avez pas la permission d'ajouter des sous-dossiers dans ce dossier - + Not allowed because you don't have permission to add parent directory Non autorisé car vous n'avez pas la permission d'ajouter des dossiers parents - + Not allowed because you don't have permission to add files in that directory Non autorisé car vous n'avez pas la permission d'ajouter des fichiers dans ce dossier - + Not allowed to upload this file because it is read-only on the server, restoring Non autorisé à envoyer ce fichier car il est en lecture seule sur le serveur. Restauration - - + + Not allowed to remove, restoring Non autorisé à supprimer. Restauration - + Local files and share folder removed. Fichiers locaux et répertoire de partage supprimés. - + Move not allowed, item restored Déplacement non autorisé, élément restauré - + Move not allowed because %1 is read-only Déplacement non autorisé car %1 est en mode lecture seule - + the destination la destination - + the source la source @@ -2250,7 +2254,7 @@ Il est déconseillé de l'utiliser. %1% of %2 in use - %1% sur %2 utilisés + %1% de %2 utilisés @@ -2340,7 +2344,7 @@ Il est déconseillé de l'utiliser. &Keep local data - &Garder des données locales + &Garder les données locales @@ -2589,7 +2593,7 @@ Il est déconseillé de l'utiliser. downloading - téléchargement + téléchargement de diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 73333044b..81925ddb8 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -1113,8 +1113,12 @@ Recomendámoslle que non o use. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Non é posíbel conectar de forma segura. Quere, aínda así, conectar sen cifrar (non recomendado)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ Recomendámoslle que non o use. O ficheiro conten caracteres incorrectos que non poden sincronizarse entre distintas plataformas. - + Unable to initialize a sync journal. Non é posíbel iniciar un rexistro de sincronización. - + Cannot open the sync journal Non foi posíbel abrir o rexistro de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado debido a lista negra de "escolla qué sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Non está permitido xa que non ten permiso para engadir subdirectorios nese directorio - + Not allowed because you don't have permission to add parent directory Non está permitido xa que non ten permiso para engadir un directorio pai - + Not allowed because you don't have permission to add files in that directory Non está permitido xa que non ten permiso para engadir ficheiros nese directorio - + Not allowed to upload this file because it is read-only on the server, restoring Non está permitido o envío xa que o ficheiro é só de lectura no servidor, restaurando - - + + Not allowed to remove, restoring Non está permitido retiralo, restaurando - + Local files and share folder removed. Ficheiros locáis e cartafol compartido eliminados. - + Move not allowed, item restored Nos está permitido movelo, elemento restaurado - + Move not allowed because %1 is read-only Bon está permitido movelo xa que %1 é só de lectura - + the destination o destino - + the source a orixe diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index cfe26ede5..961b0c269 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -1106,7 +1106,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2049,69 +2053,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index fa135f588..e4d3693dc 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -1112,8 +1112,12 @@ Non è consigliabile utilizzarlo. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Impossibile connettersi in modo sicuro. Vuoi provare a connetterti senza cifratura (non consigliato)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2061,69 +2065,69 @@ Non è consigliabile utilizzarlo. Il file contiene caratteri non validi che non possono essere sincronizzati su diverse piattaforme. - + Unable to initialize a sync journal. Impossibile inizializzare il registro di sincronizzazione. - + Cannot open the sync journal Impossibile aprire il registro di sincronizzazione - - + + Ignored because of the "choose what to sync" blacklist Ignorato in base alla lista nera per la scelta di cosa sincronizzare - + Not allowed because you don't have permission to add sub-directories in that directory Non consentito poiché non disponi dei permessi per aggiungere sottocartelle in quella cartella - + Not allowed because you don't have permission to add parent directory Non consentito poiché non disponi dei permessi per aggiungere la cartella superiore - + Not allowed because you don't have permission to add files in that directory Non consentito poiché non disponi dei permessi per aggiungere file in quella cartella - + Not allowed to upload this file because it is read-only on the server, restoring Il caricamento di questo file non è consentito poiché è in sola lettura sul server, ripristino - - + + Not allowed to remove, restoring Rimozione non consentita, ripristino - + Local files and share folder removed. I file locali e la cartella condivisa sono stati rimossi. - + Move not allowed, item restored Spostamento non consentito, elemento ripristinato - + Move not allowed because %1 is read-only Spostamento non consentito poiché %1 è in sola lettura - + the destination la destinazione - + the source l'origine diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index de013f455..3b40f592b 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -1111,8 +1111,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - 安全に接続できませんでした。暗号化せずに接続しますか?(非推奨) + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ It is not advisable to use it. ファイルに無効な文字が含まれているため、クロスプラットフォーム環境での同期ができません。 - + Unable to initialize a sync journal. 同期ジャーナルの初期化ができません。 - + Cannot open the sync journal 同期ジャーナルを開くことができません - - + + Ignored because of the "choose what to sync" blacklist "同期対象先" ブラックリストにより無視されました。 - + Not allowed because you don't have permission to add sub-directories in that directory そのディレクトリにサブディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add parent directory 親ディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add files in that directory そのディレクトリにファイルを追加する権限がありません - + Not allowed to upload this file because it is read-only on the server, restoring サーバーでは読み取り専用となっているため、このファイルをアップロードすることはできません、復元しています - - + + Not allowed to remove, restoring 削除できません、復元しています - + Local files and share folder removed. ローカルファイルと共有フォルダが削除されました。 - + Move not allowed, item restored 移動できません、項目を復元しました - + Move not allowed because %1 is read-only %1 は読み取り専用のため移動できません - + the destination 移動先 - + the source 移動元 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 88521853d..eb6142d35 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -1113,8 +1113,12 @@ We adviseren deze site niet te gebruiken. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Kon geen beveiligde verbinding maken. Wilt u een onversleutelde verbinding maken (niet aan te raden)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2061,69 +2065,69 @@ We adviseren deze site niet te gebruiken. Bestand bevat ongeldige karakters die niet tussen platformen gesynchroniseerd kunnen worden. - + Unable to initialize a sync journal. Niet in staat om een synchronisatie transactielog te starten. - + Cannot open the sync journal Kan het sync transactielog niet openen - - + + Ignored because of the "choose what to sync" blacklist Genegeerd vanwege de "kies wat te synchen" zwarte lijst - + Not allowed because you don't have permission to add sub-directories in that directory Niet toegestaan, omdat u geen rechten hebt om sub-directories aan te maken in die directory - + Not allowed because you don't have permission to add parent directory Niet toegestaan, omdat u geen rechten hebt om een bovenliggende directories toe te voegen - + Not allowed because you don't have permission to add files in that directory Niet toegestaan, omdat u geen rechten hebt om bestanden in die directory toe te voegen - + Not allowed to upload this file because it is read-only on the server, restoring Niet toegestaan om dit bestand te uploaden, omdat het alleen-lezen is op de server, herstellen - - + + Not allowed to remove, restoring Niet toegestaan te verwijderen, herstellen - + Local files and share folder removed. Lokale bestanden en share-map verwijderd. - + Move not allowed, item restored Verplaatsen niet toegestaan, object hersteld - + Move not allowed because %1 is read-only Verplaatsen niet toegestaan omdat %1 alleen-lezen is - + the destination bestemming - + the source bron diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index b51eaeea3..d5078b67f 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -1113,8 +1113,12 @@ Niezalecane jest jego użycie. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Nie udało się połączyć bezpiecznie. Czy chcesz nawiązać połączenie nieszyfrowane (niezalecane)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ Niezalecane jest jego użycie. Plik zawiera nieprawidłowe znaki, które nie mogą być synchronizowane wieloplatformowo. - + Unable to initialize a sync journal. Nie można zainicjować synchronizacji dziennika. - + Cannot open the sync journal Nie można otworzyć dziennika synchronizacji - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie masz uprawnień do dodawania podkatalogów w tym katalogu. - + Not allowed because you don't have permission to add parent directory Nie masz uprawnień by dodać katalog nadrzędny - + Not allowed because you don't have permission to add files in that directory Nie masz uprawnień by dodać pliki w tym katalogu - + Not allowed to upload this file because it is read-only on the server, restoring Wgrywanie niedozwolone, ponieważ plik jest tylko do odczytu na serwerze, przywracanie - - + + Not allowed to remove, restoring Brak uprawnień by usunąć, przywracanie - + Local files and share folder removed. - + Move not allowed, item restored Przenoszenie niedozwolone, obiekt przywrócony - + Move not allowed because %1 is read-only Przenoszenie niedozwolone, ponieważ %1 jest tylko do odczytu - + the destination docelowy - + the source źródło diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 91077aead..e0bfa2a50 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -1110,8 +1110,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Não foi possível estabelecer uma ligação segura. Deseja utilizar uma ligação não segura?(não recomendado)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2060,69 +2064,69 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n O ficheiro contém caracteres inválidos que não podem ser sincronizados pelas várias plataformas. - + Unable to initialize a sync journal. Impossível inicializar sincronização 'journal'. - + Cannot open the sync journal Impossível abrir o jornal de sincronismo - - + + Ignored because of the "choose what to sync" blacklist Ignorado devido à blacklist de escolha para sincronização - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido, porque não tem permissão para adicionar sub-directórios ao directório - + Not allowed because you don't have permission to add parent directory Não permitido, porque não tem permissão para adicionar o directório principal - + Not allowed because you don't have permission to add files in that directory Não permitido, porque não tem permissão para adicionar ficheiros no directório - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o envio deste ficheiro porque é só de leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não autorizado para remoção, restaurando - + Local files and share folder removed. Ficheiros locais e pasta partilhada removidos. - + Move not allowed, item restored Mover não foi permitido, item restaurado - + Move not allowed because %1 is read-only Mover não foi autorizado porque %1 é só de leitura - + the destination o destino - + the source a origem diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index d1bec6a96..d54cc03eb 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -1111,8 +1111,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Não foi possível conectar com segurança. Você deseja se conectar sem usar criptografia (não recomendado)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2056,69 +2060,69 @@ It is not advisable to use it. Arquivos que contém caracteres inválidos não podem ser sincronizados através de plataformas. - + Unable to initialize a sync journal. Impossibilitado de iniciar a sincronização. - + Cannot open the sync journal Não é possível abrir o arquivo de sincronização - - + + Ignored because of the "choose what to sync" blacklist Ignorado por causa da lista negra "escolher o que sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido porque você não tem permissão de criar sub-pastas nesta pasta - + Not allowed because you don't have permission to add parent directory Não permitido porque você não tem permissão de criar pastas mãe - + Not allowed because you don't have permission to add files in that directory Não permitido porque você não tem permissão de adicionar arquivos a esta pasta - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o upload deste arquivo porque ele é somente leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não é permitido remover, restaurando - + Local files and share folder removed. Arquivos locais e pasta compartilhada removida. - + Move not allowed, item restored Não é permitido mover, item restaurado - + Move not allowed because %1 is read-only Não é permitido mover porque %1 é somente para leitura - + the destination o destino - + the source a fonte diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index b900552ea..2528a0839 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -1113,8 +1113,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Не удалось безопасно подключиться . Вы хотите подключиться в незашифрованном виде(не рекомендуется)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ It is not advisable to use it. Файл содержит недопустимые символы, которые невозможно синхронизировать между платформами. - + Unable to initialize a sync journal. Не удалось инициализировать журнал синхронизации. - + Cannot open the sync journal Не удаётся открыть журнал синхронизации - - + + Ignored because of the "choose what to sync" blacklist Игнорируется из-за черного списка в "выбрать что синхронизировать" - + Not allowed because you don't have permission to add sub-directories in that directory Недопустимо из-за отсутствия у вас разрешений на добавление подпапок в этой папке - + Not allowed because you don't have permission to add parent directory Недопустимо из-за отсутствия у вас разрешений на добавление родительской папки - + Not allowed because you don't have permission to add files in that directory Недопустимо из-за отсутствия у вас разрешений на добавление файлов в эту папку - + Not allowed to upload this file because it is read-only on the server, restoring Недопустимо отправить этот файл поскольку на севрере он помечен только для чтения, восстанавливаем - - + + Not allowed to remove, restoring Недопустимо удалить, восстанавливаем - + Local files and share folder removed. Локальные файлы и папки, добавленные в общий доступ, удалены. - + Move not allowed, item restored Перемещение недопустимо, элемент восстановлен - + Move not allowed because %1 is read-only Перемещение недопустимо, поскольку %1 помечен только для чтения - + the destination Назначение - + the source Источник diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 81bd850bf..0712a3dc0 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -1113,8 +1113,12 @@ Nie je vhodné ju používať. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Nemožno sa bezpečne pripojiť. Chcete sa pripojiť nešifrovane (neodporúča sa)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ Nie je vhodné ju používať. Súbor obsahuje neplatné znaky, ktoré nemôžu byť zosynchronizované medzi platformami. - + Unable to initialize a sync journal. Nemôžem inicializovať synchronizačný žurnál. - + Cannot open the sync journal Nemožno otvoriť sync žurnál - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára podadresáre. - + Not allowed because you don't have permission to add parent directory Nie je dovolené, pretože nemáte oprávnenie pridať nadradený adresár. - + Not allowed because you don't have permission to add files in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára súbory. - + Not allowed to upload this file because it is read-only on the server, restoring Nie je dovolené tento súbor nahrať, pretože je na serveri iba na čítanie. Obnovuje sa. - - + + Not allowed to remove, restoring Nie je dovolené odstrániť. Obnovuje sa. - + Local files and share folder removed. - + Move not allowed, item restored Presunutie nie je dovolené. Položka obnovená. - + Move not allowed because %1 is read-only Presunutie nie je dovolené, pretože %1 je na serveri iba na čítanie - + the destination cieľ - + the source zdroj diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 736f25f6e..a65b18e69 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -1113,8 +1113,12 @@ Uporaba ni priporočljiva. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Ni mogoče vzpostaviti varne povezave. Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ Uporaba ni priporočljiva. Ime datoteke vsebuje neveljavne znake, ki niso podprti na vseh okoljih. - + Unable to initialize a sync journal. Dnevnika usklajevanja ni mogoče začeti. - + Cannot open the sync journal Ni mogoče odpreti dnevnika usklajevanja - - + + Ignored because of the "choose what to sync" blacklist Prezrto, ker ni neizbrano za usklajevanje - + Not allowed because you don't have permission to add sub-directories in that directory Ni ustreznih dovoljenj za dodajanje podmap v izbrano mapo. - + Not allowed because you don't have permission to add parent directory Ni ustreznih dovoljenj za dodajanje nadrejene mape. - + Not allowed because you don't have permission to add files in that directory Ni ustreznih dovoljenj za dodajanje datotek v izbrano mapo. - + Not allowed to upload this file because it is read-only on the server, restoring Ni dovoljeno pošiljati te datoteke, ker ima določena dovoljenja le za branje. Datoteka bo obnovljena na izvorno različico. - - + + Not allowed to remove, restoring Odstranitev ni dovoljena, datoteka bo obnovljena. - + Local files and share folder removed. Krajevne datoteke in mape v souporabi so odstranjene. - + Move not allowed, item restored Premikanje ni dovoljeno, datoteka bo obnovljena. - + Move not allowed because %1 is read-only Premikanje ni dovoljeno, ker je nastavljeno določilo %1 le za branje. - + the destination cilj - + the source vir diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index a1b9d4342..a6d62ca72 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -1113,8 +1113,12 @@ Det är inte lämpligt använda den. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Kunde inte ansluta säkert. Vill du ansluta okrypterat istället (rekommenderas ej)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2058,69 +2062,69 @@ Det är inte lämpligt använda den. Filen innehåller ogiltiga tecken som inte kan synkas oberoende av plattform. - + Unable to initialize a sync journal. Kan inte initialisera en synk journal. - + Cannot open the sync journal Kunde inte öppna synk journalen - - + + Ignored because of the "choose what to sync" blacklist Ignorerad eftersom den är svartlistad i "välj vad som ska synkas" - + Not allowed because you don't have permission to add sub-directories in that directory Går ej att genomföra då du saknar rättigheter att lägga till underkataloger i den katalogen - + Not allowed because you don't have permission to add parent directory Går ej att genomföra då du saknar rättigheter att lägga till någon moderkatalog - + Not allowed because you don't have permission to add files in that directory Går ej att genomföra då du saknar rättigheter att lägga till filer i den katalogen - + Not allowed to upload this file because it is read-only on the server, restoring Inte behörig att ladda upp denna fil då den är skrivskyddad på servern, återställer - - + + Not allowed to remove, restoring Inte behörig att radera, återställer - + Local files and share folder removed. Lokala filer och mappar som är delade är borttagna. - + Move not allowed, item restored Det gick inte att genomföra flytten, objektet återställs - + Move not allowed because %1 is read-only Det gick inte att genomföra flytten då %1 är skrivskyddad - + the destination destinationen - + the source källan diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index d25b981f9..e72b34054 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -1106,7 +1106,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2049,69 +2053,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 525a71253..25760515e 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -1113,8 +1113,12 @@ Kullanmanız önerilmez. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Güvenli olarak bağlanılamadı. Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2062,69 +2066,69 @@ Kullanmanız önerilmez. Dosya, çapraz platform arasında eşitlenemeyecek karakterler içeriyor. - + Unable to initialize a sync journal. Bir eşitleme günlüğü başlatılamadı. - + Cannot open the sync journal Eşitleme günlüğü açılamıyor - - + + Ignored because of the "choose what to sync" blacklist "Eşitlenecekleri seçin" kara listesinde olduğundan yoksayıldı. - + Not allowed because you don't have permission to add sub-directories in that directory Bu dizine alt dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add parent directory Üst dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add files in that directory Bu dizine dosya ekleme yetkiniz olmadığından izin verilmedi - + Not allowed to upload this file because it is read-only on the server, restoring Sunucuda salt okunur olduğundan, bu dosya yüklenemedi, geri alınıyor - - + + Not allowed to remove, restoring Kaldırmaya izin verilmedi, geri alınıyor - + Local files and share folder removed. Yerel dosyalar ve paylaşım klasörü kaldırıldı. - + Move not allowed, item restored Taşımaya izin verilmedi, öge geri alındı - + Move not allowed because %1 is read-only %1 salt okunur olduğundan taşımaya izin verilmedi - + the destination hedef - + the source kaynak diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index afc8f3551..54452c515 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -1113,8 +1113,12 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? - Не вдалося безпечно підключитися. Бажаєте підключитися без шифрування (не рекомендується)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? + @@ -2064,69 +2068,69 @@ It is not advisable to use it. Файл містить недопустимі символи, через це синхронізація між платформами неможлива. - + Unable to initialize a sync journal. Не вдалося ініціалізувати протокол синхронізації. - + Cannot open the sync journal Не вдається відкрити протокол синхронізації - - + + Ignored because of the "choose what to sync" blacklist Ігнорується через чорний список в "обрати що синхронізувати" - + Not allowed because you don't have permission to add sub-directories in that directory Не дозволено через відсутність прав на додавання підкаталогів в цій теці. - + Not allowed because you don't have permission to add parent directory Не дозволено через відсутність прав на додавання батьківської теки. - + Not allowed because you don't have permission to add files in that directory Не дозволено через відсутність прав на додавання файлів в цю теку. - + Not allowed to upload this file because it is read-only on the server, restoring Не дозволено завантажувати цей файл, оскільки він має дозвіл лише на перегляд, відновлюємо - - + + Not allowed to remove, restoring Не дозволено видаляти, відновлюємо - + Local files and share folder removed. Локальні файли та теки в загальному доступі було видалено. - + Move not allowed, item restored Переміщення не дозволено, елемент відновлено - + Move not allowed because %1 is read-only Переміщення не дозволено, оскільки %1 помічений тільки для перегляду - + the destination призначення - + the source джерело diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index 4678e4766..f8c5b0293 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -1110,7 +1110,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2055,69 +2059,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. 无法初始化同步日志 - + Cannot open the sync journal 无法打开同步日志 - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 8352b343d..4aa679a19 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -1106,7 +1106,11 @@ It is not advisable to use it. - Could not connect securely. Do you want to connect unencrypted instead (not recommended)? + Could not connect securely: + +%1 + +Do you want to connect unencrypted instead (not recommended)? @@ -2049,69 +2053,69 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source From 1310bef52815946fc37b4b607ec1a405b0eadcf7 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 13 Nov 2014 18:57:07 +0100 Subject: [PATCH 19/87] Port the propagate mkdir to QNAM This way we can make it parallel --- src/libsync/CMakeLists.txt | 1 + src/libsync/networkjobs.cpp | 13 +-- src/libsync/networkjobs.h | 1 + src/libsync/owncloudpropagator.cpp | 1 + src/libsync/propagateremotemkdir.cpp | 117 +++++++++++++++++++++++++++ src/libsync/propagateremotemkdir.h | 36 +++++++++ src/libsync/propagatorjobs.cpp | 82 ------------------- src/libsync/propagatorjobs.h | 10 --- 8 files changed, 164 insertions(+), 97 deletions(-) create mode 100644 src/libsync/propagateremotemkdir.cpp create mode 100644 src/libsync/propagateremotemkdir.h diff --git a/src/libsync/CMakeLists.txt b/src/libsync/CMakeLists.txt index 3465f8e24..dd1699ef8 100644 --- a/src/libsync/CMakeLists.txt +++ b/src/libsync/CMakeLists.txt @@ -53,6 +53,7 @@ set(libsync_SRCS propagateupload.cpp propagateremotedelete.cpp propagateremotemove.cpp + propagateremotemkdir.cpp quotainfo.cpp syncengine.cpp syncfilestatus.cpp diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp index ee5a175f5..5271616db 100644 --- a/src/libsync/networkjobs.cpp +++ b/src/libsync/networkjobs.cpp @@ -497,7 +497,11 @@ void PropfindJob::start() req.setRawHeader("Depth", "0"); QByteArray propStr; foreach (const QByteArray &prop, properties) { - propStr += " \n"; + if (prop.contains(':')) { + propStr += " <" + prop + " />\n"; + } else { + propStr += " \n"; + } } QByteArray xml = "\n" "\n" @@ -540,15 +544,13 @@ bool PropfindJob::finished() while (!reader.atEnd()) { QXmlStreamReader::TokenType type = reader.readNext(); - if (type == QXmlStreamReader::StartElement && - reader.namespaceUri() == QLatin1String("DAV:")) { + if (type == QXmlStreamReader::StartElement) { if (curElement.isEmpty()) { curElement.push(reader.name().toString()); items.insert(reader.name().toString(), reader.text().toString()); } } - if (type == QXmlStreamReader::EndElement && - reader.namespaceUri() == QLatin1String("DAV:")) { + if (type == QXmlStreamReader::EndElement) { if(curElement.top() == reader.name()) { curElement.pop(); } @@ -559,6 +561,7 @@ bool PropfindJob::finished() } else { qDebug() << "Quota request *not* successful, http result code is" << http_result_code << (http_result_code == 302 ? reply()->header(QNetworkRequest::LocationHeader).toString() : QLatin1String("")); + emit finishedWithError(); } return true; } diff --git a/src/libsync/networkjobs.h b/src/libsync/networkjobs.h index 77e00cd25..203359329 100644 --- a/src/libsync/networkjobs.h +++ b/src/libsync/networkjobs.h @@ -158,6 +158,7 @@ public: signals: void result(const QVariantMap &values); + void finishedWithError(); private slots: virtual bool finished() Q_DECL_OVERRIDE; diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index b053ce802..b0ff532e8 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -20,6 +20,7 @@ #include "propagateupload.h" #include "propagateremotedelete.h" #include "propagateremotemove.h" +#include "propagateremotemkdir.h" #include "propagatorjobs.h" #include "propagator_legacy.h" #include "mirallconfigfile.h" diff --git a/src/libsync/propagateremotemkdir.cpp b/src/libsync/propagateremotemkdir.cpp new file mode 100644 index 000000000..38a7c49bb --- /dev/null +++ b/src/libsync/propagateremotemkdir.cpp @@ -0,0 +1,117 @@ +/* + * Copyright (C) by Olivier Goffart + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#include "propagateremotemkdir.h" +#include "owncloudpropagator_p.h" +#include "account.h" +#include "syncjournalfilerecord.h" +#include + +namespace Mirall { + +void PropagateRemoteMkdir::start() +{ + if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) + return; + + qDebug() << Q_FUNC_INFO << _item._file; + + _job = new MkColJob(AccountManager::instance()->account(), + _propagator->_remoteFolder + _item._file, + this); + connect(_job, SIGNAL(finished(QNetworkReply::NetworkError)), this, SLOT(slotMkcolJobFinished())); + _propagator->_activeJobs++; + _job->start(); + emitReady(); +} + +void PropagateRemoteMkdir::abort() +{ + if (_job && _job->reply()) + _job->reply()->abort(); +} + +void PropagateRemoteMkdir::slotMkcolJobFinished() +{ + _propagator->_activeJobs--; + + Q_ASSERT(_job); + + qDebug() << Q_FUNC_INFO << _job->reply()->request().url() << "FINISHED WITH STATUS" + << _job->reply()->error() + << (_job->reply()->error() == QNetworkReply::NoError ? QLatin1String("") : _job->reply()->errorString()); + + QNetworkReply::NetworkError err = _job->reply()->error(); + _item._httpErrorCode = _job->reply()->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(); + + if (_item._httpErrorCode == 405) { + // This happens when the directory already exist. Nothing to do. + } else if (err != QNetworkReply::NoError) { + SyncFileItem::Status status = classifyError(err, _item._httpErrorCode); + done(status, _job->reply()->errorString()); + return; + } else if (_item._httpErrorCode != 201) { + // Normaly we expect "201 Created" + // If it is not the case, it might be because of a proxy or gateway intercepting the request, so we must + // throw an error. + done(SyncFileItem::NormalError, tr("Wrong HTTP code returned by server. Expected 201, but recieved \"%1 %2\".") + .arg(_item._httpErrorCode).arg(_job->reply()->attribute(QNetworkRequest::HttpReasonPhraseAttribute).toString())); + return; + } + + _item._requestDuration = _job->duration(); + _item._responseTimeStamp = _job->responseTimestamp(); + _item._fileId = _job->reply()->rawHeader("OC-FileId"); + + if (_item._fileId.isEmpty()) { + // Owncloud 7.0.0 and before did not have a header with the file id. + // (https://github.com/owncloud/core/issues/9000) + // So we must get the file id using a PROPFIND + // This is required so that we can detect moves even if the folder is renamed on the server + // while files are still uploading + _propagator->_activeJobs++; + auto propfindJob = new PropfindJob(_job->account(), _job->path(), this); + propfindJob->setProperties(QList() << "getetag" << "http://owncloud.org/ns:id"); + QObject::connect(propfindJob, SIGNAL(result(QVariantMap)), this, SLOT(propfindResult(QVariantMap))); + QObject::connect(propfindJob, SIGNAL(finishedWithError()), this, SLOT(propfindError())); + propfindJob->start(); + _job = propfindJob; + return; + } + + done(SyncFileItem::Success); +} + +void PropagateRemoteMkdir::propfindResult(const QVariantMap &result) +{ + _propagator->_activeJobs--; + if (result.contains("getetag")) { + _item._etag = result["getetag"].toByteArray(); + } + if (result.contains("id")) { + _item._fileId = result["id"].toByteArray(); + } + done(SyncFileItem::Success); +} + +void PropagateRemoteMkdir::propfindError() +{ + // ignore the PROPFIND error + _propagator->_activeJobs--; + done(SyncFileItem::Success); +} + + +} + diff --git a/src/libsync/propagateremotemkdir.h b/src/libsync/propagateremotemkdir.h new file mode 100644 index 000000000..fae8db28b --- /dev/null +++ b/src/libsync/propagateremotemkdir.h @@ -0,0 +1,36 @@ +/* + * Copyright (C) by Olivier Goffart + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ +#pragma once + +#include "owncloudpropagator.h" +#include "networkjobs.h" + +namespace Mirall { + +class PropagateRemoteMkdir : public PropagateItemJob { + Q_OBJECT + QPointer _job; + friend class PropagateDirectory; // So it can access the _item; +public: + PropagateRemoteMkdir (OwncloudPropagator* propagator,const SyncFileItem& item) + : PropagateItemJob(propagator, item) {} + void start() Q_DECL_OVERRIDE; + void abort() Q_DECL_OVERRIDE; +private slots: + void slotMkcolJobFinished(); + void propfindResult(const QVariantMap &); + void propfindError(); +}; + +} \ No newline at end of file diff --git a/src/libsync/propagatorjobs.cpp b/src/libsync/propagatorjobs.cpp index 0edf76792..942e1bfaf 100644 --- a/src/libsync/propagatorjobs.cpp +++ b/src/libsync/propagatorjobs.cpp @@ -135,88 +135,6 @@ void PropagateLocalMkdir::start() done(SyncFileItem::Success); } -/* The list of properties that is fetched in PropFind after a MKCOL */ -static const ne_propname ls_props[] = { - { "DAV:", "getetag"}, - { "http://owncloud.org/ns", "id"}, - { NULL, NULL } -}; - -/* - * Parse the PROPFIND result after a MKCOL - */ -void PropagateRemoteMkdir::propfind_results(void *userdata, - const ne_uri *uri, - const ne_prop_result_set *set) -{ - PropagateRemoteMkdir *job = static_cast(userdata); - - job->_item._etag = parseEtag(ne_propset_value( set, &ls_props[0] )); - - const char* fileId = ne_propset_value( set, &ls_props[1] ); - if (fileId) { - job->_item._fileId = fileId; - qDebug() << "MKCOL: " << uri << " FileID set it to " << fileId; - - // save the file id already so we can detect rename - SyncJournalFileRecord record(job->_item, job->_propagator->_localDir + job->_item._renameTarget); - job->_propagator->_journal->setFileRecord(record); - } -} - -/* - * Called after the headers have been recieved, try to extract the fileId - */ -void PropagateRemoteMkdir::post_headers(ne_request* req, void* userdata, const ne_status* ) -{ - const char *header = ne_get_response_header(req, "OC-FileId"); - if( header ) { - qDebug() << "MKCOL: " << static_cast(userdata)->_item._file << " FileID from header:" << header; - static_cast(userdata)->_item._fileId = header; - } -} - - -void PropagateRemoteMkdir::start() -{ - if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) - return; - - QScopedPointer uri( - ne_path_escape((_propagator->_remoteDir + _item._file).toUtf8())); - - ne_hook_post_headers(_propagator->_session, post_headers, this); - - int rc = ne_mkcol(_propagator->_session, uri.data()); - - ne_unhook_post_headers(_propagator->_session, post_headers, this); - - - /* Special for mkcol: it returns 405 if the directory already exists. - * Ignore that error */ - // Wed, 15 Nov 1995 06:25:24 GMT - QDateTime dt = QDateTime::currentDateTimeUtc(); - _item._responseTimeStamp = dt.toString("hh:mm:ss"); - - if( updateErrorFromSession( rc , 0, 405 ) ) { - return; - } - - if (_item._fileId.isEmpty()) { - // Owncloud 7.0.0 and before did not have a header with the file id. - // (https://github.com/owncloud/core/issues/9000) - // So we must get the file id using a PROPFIND - // This is required so that wa can detect moves even if the folder is renamed on the server - // while files are still uploading - ne_propfind_handler *hdl = ne_propfind_create(_propagator->_session, uri.data(), 0); - ne_propfind_named(hdl, ls_props, propfind_results, this); - ne_propfind_destroy(hdl); - } - - done(SyncFileItem::Success); -} - - void PropagateLocalRename::start() { if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) diff --git a/src/libsync/propagatorjobs.h b/src/libsync/propagatorjobs.h index a6534e010..e622880ee 100644 --- a/src/libsync/propagatorjobs.h +++ b/src/libsync/propagatorjobs.h @@ -83,16 +83,6 @@ public: void start() Q_DECL_OVERRIDE; }; -class PropagateRemoteMkdir : public PropagateNeonJob { - Q_OBJECT -public: - PropagateRemoteMkdir (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start() Q_DECL_OVERRIDE; -private: - static void propfind_results(void *userdata, const ne_uri *uri, const ne_prop_result_set *set); - static void post_headers(ne_request *req, void *userdata, const ne_status *status); - friend class PropagateDirectory; // So it can access the _item; -}; class PropagateLocalRename : public PropagateItemJob { Q_OBJECT public: From e71c617bfd36114d60b9866c89f1af08be807033 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Fri, 14 Nov 2014 01:25:20 -0500 Subject: [PATCH 20/87] [tx-robot] updated from transifex --- translations/mirall_cs.ts | 6 +++++- translations/mirall_de.ts | 6 +++++- translations/mirall_es.ts | 6 +++++- translations/mirall_fi.ts | 4 ++-- translations/mirall_fr.ts | 6 +++++- translations/mirall_nl.ts | 6 +++++- translations/mirall_pt_BR.ts | 6 +++++- translations/mirall_tr.ts | 4 ++-- translations/mirall_uk.ts | 6 +++++- 9 files changed, 39 insertions(+), 11 deletions(-) diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index fc8dfa9f1..7e0d4b935 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -1118,7 +1118,11 @@ Nedoporučuje se jí používat. %1 Do you want to connect unencrypted instead (not recommended)? - + Nelze se připojit zabezpečeně: + +%1 + +Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)? diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 9e9a207e1..762b61024 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -1119,7 +1119,11 @@ Es ist nicht ratsam, diese zu benutzen. %1 Do you want to connect unencrypted instead (not recommended)? - + Die Verbindung kann nicht sicher hergestellt werden: + +%1 + +Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)? diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index e16a1d049..3f1991ea9 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -1118,7 +1118,11 @@ No se recomienda usarlo. %1 Do you want to connect unencrypted instead (not recommended)? - + No se pudo conectar cifrado: + +%1 + +Desea conectar a cambio sin encriptación (no recomendado)? diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index cdaec9b6e..5864c3966 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -1349,7 +1349,7 @@ Do you want to connect unencrypted instead (not recommended)? ; Restoration Failed: - + ; Palauttaminen epäonnistui: @@ -1375,7 +1375,7 @@ Do you want to connect unencrypted instead (not recommended)? Error removing '%1': %2; - + Virhe poistaessa '%1': %2; diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 57701c3a1..326097d58 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -1118,7 +1118,11 @@ Il est déconseillé de l'utiliser. %1 Do you want to connect unencrypted instead (not recommended)? - + Impossible de se connecter en toute sécurité. + +%1 + +Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index eb6142d35..1aadb85c6 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -1118,7 +1118,11 @@ We adviseren deze site niet te gebruiken. %1 Do you want to connect unencrypted instead (not recommended)? - + Kon geen beveiligde verbinding maken: + +%1 + +Wilt u een onversleutelde verbinding maken (niet aanbevolen)? diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index d54cc03eb..3a53762e7 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -1116,7 +1116,11 @@ It is not advisable to use it. %1 Do you want to connect unencrypted instead (not recommended)? - + Não foi possível conectar com segurança: + +%1 + +Você deseja se conectar sem criptografia (não recomendado)? diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 25760515e..242b2fe53 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -2146,7 +2146,7 @@ Do you want to connect unencrypted instead (not recommended)? <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.</p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br/>%5 and the %5 logo are registered trademarks of %4 in the United States, other countries, or both.</p> - <p>Sürüm %1 Daha fazla bilgi için lütfen <a href='%2'>%3</a> adresini ziyaret edin.</p><p>Telif hakkı ownCloud, Inc.</p><p>Dağıtım %4 ve GNU Genel Kamu Lisansı (GPL) Sürüm 2.0 ile lisanslanmıştır olup <br/>%5 ve %5 logoları ABD ve/veya diğer ülkelerde %4 tescili markalarıdır.</p> + <p>Sürüm %1 Daha fazla bilgi için lütfen <a href='%2'>%3</a> adresini ziyaret edin.</p><p>Telif hakkı ownCloud, Inc.</p><p>%4 tarafından dağıtılmakta ve GNU Genel Kamu Lisansı (GPL) Sürüm 2.0 ile lisanslanmıştır olup <br/>%5 ve %5 logoları ABD ve/veya diğer ülkelerde %4 tescili markalarıdır.</p> @@ -2292,7 +2292,7 @@ Do you want to connect unencrypted instead (not recommended)? <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz and others.<br/>Based on Mirall by Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licensed under the GNU General Public License (GPL) Version 2.0<br/>ownCloud and the ownCloud Logo are registered trademarks of ownCloud, Inc. in the United States, other countries, or both.</p> - <p>Sürüm %2. Daha fazla bilgi için lütfen <a href="%3">%4</a> adresini ziyaret edin.</p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz ve diğerleri.<br>Duncan Mac-Vicar P. tarafından yazılmış Mirall tabanlıdır.</small></p><p>Telif hakkı ownCloud, Inc.</p><p>GNU Genel Kamu Lisansı (GPL) Sürüm 2.0 ile lisanslanmıştır.<br>ownCloud ve ownCloud logoları <br>ABD ve/veya diğer ülkelerde ownCloud, Inc.'nin tescili markalarıdır.</p> + <p>Sürüm %2. Daha fazla bilgi için lütfen <a href="%3">%4</a> adresini ziyaret edin.</p><p><small>Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz ve diğerleri.<br/>Duncan Mac-Vicar P. tarafından yazılmış Mirall tabanlıdır.</small></p><p>Telif hakkı ownCloud, Inc.</p><p>GNU Genel Kamu Lisansı (GPL) Sürüm 2.0 ile lisanslanmıştır.<br/>ownCloud ve ownCloud logoları ABD ve/veya diğer ülkelerde ownCloud, Inc.'nin tescili markalarıdır.</p> diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 54452c515..2cae7cd52 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -1118,7 +1118,11 @@ It is not advisable to use it. %1 Do you want to connect unencrypted instead (not recommended)? - + Не вдалося безпечно підключитися. + +%1 + +Бажаєте підключитися без шифрування (не рекомендується)? From 5b7ec19778b8c8cf5dc12495ded9211847015a61 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Fri, 14 Nov 2014 14:52:43 +0100 Subject: [PATCH 21/87] SyncEngine: Also output the neon version --- src/mirall/syncengine.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mirall/syncengine.cpp b/src/mirall/syncengine.cpp index 14c3de729..971140143 100644 --- a/src/mirall/syncengine.cpp +++ b/src/mirall/syncengine.cpp @@ -545,6 +545,8 @@ void SyncEngine::startSync() } qDebug() << "=====Using Qt" << qVersion() << "with" << QSslSocket::sslLibraryVersionString().toUtf8().data(); + // Note that this seems to output the OpenSSL build version not runtime version: + qDebug() << "=====Using" << ne_version_string(); fileRecordCount = _journal->getFileRecordCount(); // this creates the DB if it does not exist yet bool isUpdateFrom_1_5 = _journal->isUpdateFrom_1_5(); From f3797abecfd90d8b8a068256aa9bbcda1f3ff3da Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 14 Nov 2014 15:03:48 +0100 Subject: [PATCH 22/87] Fix the PropfindJob -the namespace mangling was wrong -And the way we read the reply did not work --- src/libsync/networkjobs.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp index 5271616db..78179aa68 100644 --- a/src/libsync/networkjobs.cpp +++ b/src/libsync/networkjobs.cpp @@ -498,7 +498,8 @@ void PropfindJob::start() QByteArray propStr; foreach (const QByteArray &prop, properties) { if (prop.contains(':')) { - propStr += " <" + prop + " />\n"; + int colIdx = prop.lastIndexOf(":"); + propStr += " <" + prop.mid(colIdx+1) + " xmlns=\"" + prop.left(colIdx) + "\" />\n"; } else { propStr += " \n"; } @@ -545,17 +546,16 @@ bool PropfindJob::finished() while (!reader.atEnd()) { QXmlStreamReader::TokenType type = reader.readNext(); if (type == QXmlStreamReader::StartElement) { - if (curElement.isEmpty()) { - curElement.push(reader.name().toString()); - items.insert(reader.name().toString(), reader.text().toString()); + if (!curElement.isEmpty() && curElement.top() == QLatin1String("prop")) { + items.insert(reader.name().toString(), reader.readElementText()); } + curElement.push(reader.name().toString()); } if (type == QXmlStreamReader::EndElement) { if(curElement.top() == reader.name()) { curElement.pop(); } } - } emit result(items); } else { From 14f5e8e32e9362ec986845ed19d31687785017df Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 14 Nov 2014 16:13:50 +0100 Subject: [PATCH 23/87] Move all the neon code to the _legacy files --- src/libsync/propagateupload.cpp | 1 + src/libsync/propagator_legacy.cpp | 72 ++++++++++++++++++++++++++ src/libsync/propagator_legacy.h | 62 +++++++++++++++++++++++ src/libsync/propagatorjobs.cpp | 84 ------------------------------- src/libsync/propagatorjobs.h | 56 --------------------- 5 files changed, 135 insertions(+), 140 deletions(-) diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index d5ac518da..079ebcf60 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -14,6 +14,7 @@ #include "propagateupload.h" #include "owncloudpropagator_p.h" +#include "propagator_legacy.h" #include "networkjobs.h" #include "account.h" #include "syncjournaldb.h" diff --git a/src/libsync/propagator_legacy.cpp b/src/libsync/propagator_legacy.cpp index 30e5ced94..3f0be0a18 100644 --- a/src/libsync/propagator_legacy.cpp +++ b/src/libsync/propagator_legacy.cpp @@ -56,6 +56,78 @@ static QByteArray get_etag_from_reply(ne_request *req) return ret; } +bool PropagateNeonJob::updateErrorFromSession(int neon_code, ne_request* req, int ignoreHttpCode) +{ + if( neon_code != NE_OK ) { + qDebug("Neon error code was %d", neon_code); + } + + QString errorString; + int httpStatusCode = 0; + + switch(neon_code) { + case NE_OK: /* Success, but still the possiblity of problems */ + if( req ) { + const ne_status *status = ne_get_status(req); + + if (status) { + if ( status->klass == 2 || status->code == ignoreHttpCode) { + // Everything is ok, no error. + return false; + } + errorString = QString::fromUtf8( status->reason_phrase ); + httpStatusCode = status->code; + _item._httpErrorCode = httpStatusCode; + } + } else { + errorString = QString::fromUtf8(ne_get_error(_propagator->_session)); + httpStatusCode = errorString.mid(0, errorString.indexOf(QChar(' '))).toInt(); + _item._httpErrorCode = httpStatusCode; + if ((httpStatusCode >= 200 && httpStatusCode < 300) + || (httpStatusCode != 0 && httpStatusCode == ignoreHttpCode)) { + // No error + return false; + } + } + // FIXME: classify the error + done (SyncFileItem::NormalError, errorString); + return true; + case NE_ERROR: /* Generic error; use ne_get_error(session) for message */ + errorString = QString::fromUtf8(ne_get_error(_propagator->_session)); + // Check if we don't need to ignore that error. + httpStatusCode = errorString.mid(0, errorString.indexOf(QChar(' '))).toInt(); + _item._httpErrorCode = httpStatusCode; + qDebug() << Q_FUNC_INFO << "NE_ERROR" << errorString << httpStatusCode << ignoreHttpCode; + if (ignoreHttpCode && httpStatusCode == ignoreHttpCode) + return false; + + done(SyncFileItem::NormalError, errorString); + return true; + case NE_LOOKUP: /* Server or proxy hostname lookup failed */ + case NE_AUTH: /* User authentication failed on server */ + case NE_PROXYAUTH: /* User authentication failed on proxy */ + case NE_CONNECT: /* Could not connect to server */ + case NE_TIMEOUT: /* Connection timed out */ + done(SyncFileItem::FatalError, QString::fromUtf8(ne_get_error(_propagator->_session))); + return true; + case NE_FAILED: /* The precondition failed */ + case NE_RETRY: /* Retry request (ne_end_request ONLY) */ + case NE_REDIRECT: /* See ne_redirect.h */ + default: + done(SyncFileItem::SoftError, QString::fromUtf8(ne_get_error(_propagator->_session))); + return true; + } + return false; +} + +void UpdateMTimeAndETagJob::start() +{ + QScopedPointer uri( + ne_path_escape((_propagator->_remoteDir + _item._file).toUtf8())); + if (!updateMTimeAndETag(uri.data(), _item._modtime)) + return; + done(SyncFileItem::Success); +} void PropagateUploadFileLegacy::start() { diff --git a/src/libsync/propagator_legacy.h b/src/libsync/propagator_legacy.h index 80b7bb1d8..f64aef0db 100644 --- a/src/libsync/propagator_legacy.h +++ b/src/libsync/propagator_legacy.h @@ -16,9 +16,71 @@ #pragma once #include "propagatorjobs.h" +#include +#include +struct hbf_transfer_s; +struct ne_session_s; +typedef struct ne_prop_result_set_s ne_prop_result_set; + namespace Mirall { + + +/* Helper for QScopedPointer<>, to be used as the deleter. + * QScopePointer will call the right overload of cleanup for the pointer it holds + */ +struct ScopedPointerHelpers { + static inline void cleanup(hbf_transfer_t *pointer) { if (pointer) hbf_free_transfer(pointer); } + static inline void cleanup(ne_request *pointer) { if (pointer) ne_request_destroy(pointer); } + static inline void cleanup(ne_decompress *pointer) { if (pointer) ne_decompress_destroy(pointer); } + // static inline void cleanup(ne_propfind_handler *pointer) { if (pointer) ne_propfind_destroy(pointer); } +}; + + +/* + * Abstract class for neon job. Lives in the neon thread + */ +class PropagateNeonJob : public PropagateItemJob { + Q_OBJECT +protected: + + /* Issue a PROPPATCH and PROPFIND to update the mtime, and fetch the etag + * Return true in case of success, and false if the PROPFIND failed and the + * error has been reported + */ + bool updateMTimeAndETag(const char *uri, time_t); + + /* fetch the error code and string from the session + in case of error, calls done with the error and returns true. + + If the HTTP error code is ignoreHTTPError, the error is ignored + */ + bool updateErrorFromSession(int neon_code = 0, ne_request *req = 0, int ignoreHTTPError = 0); + + /* + * to be called by the progress callback and will wait the amount of time needed. + */ + void limitBandwidth(qint64 progress, qint64 limit); + + QElapsedTimer _lastTime; + qint64 _lastProgress; + int _httpStatusCode; + +public: + PropagateNeonJob(OwncloudPropagator* propagator, const SyncFileItem &item) + : PropagateItemJob(propagator, item), _lastProgress(0), _httpStatusCode(0) { + moveToThread(propagator->_neonThread); + } +}; + +class UpdateMTimeAndETagJob : public PropagateNeonJob { + Q_OBJECT +public: + UpdateMTimeAndETagJob (OwncloudPropagator* propagator, const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} + void start() Q_DECL_OVERRIDE; +}; + class PropagateUploadFileLegacy: public PropagateNeonJob { Q_OBJECT public: diff --git a/src/libsync/propagatorjobs.cpp b/src/libsync/propagatorjobs.cpp index 942e1bfaf..9760f2ca7 100644 --- a/src/libsync/propagatorjobs.cpp +++ b/src/libsync/propagatorjobs.cpp @@ -35,15 +35,6 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include - #include @@ -181,79 +172,4 @@ void PropagateLocalRename::start() done(SyncFileItem::Success); } -bool PropagateNeonJob::updateErrorFromSession(int neon_code, ne_request* req, int ignoreHttpCode) -{ - if( neon_code != NE_OK ) { - qDebug("Neon error code was %d", neon_code); - } - - QString errorString; - int httpStatusCode = 0; - - switch(neon_code) { - case NE_OK: /* Success, but still the possiblity of problems */ - if( req ) { - const ne_status *status = ne_get_status(req); - - if (status) { - if ( status->klass == 2 || status->code == ignoreHttpCode) { - // Everything is ok, no error. - return false; - } - errorString = QString::fromUtf8( status->reason_phrase ); - httpStatusCode = status->code; - _item._httpErrorCode = httpStatusCode; - } - } else { - errorString = QString::fromUtf8(ne_get_error(_propagator->_session)); - httpStatusCode = errorString.mid(0, errorString.indexOf(QChar(' '))).toInt(); - _item._httpErrorCode = httpStatusCode; - if ((httpStatusCode >= 200 && httpStatusCode < 300) - || (httpStatusCode != 0 && httpStatusCode == ignoreHttpCode)) { - // No error - return false; - } - } - // FIXME: classify the error - done (SyncFileItem::NormalError, errorString); - return true; - case NE_ERROR: /* Generic error; use ne_get_error(session) for message */ - errorString = QString::fromUtf8(ne_get_error(_propagator->_session)); - // Check if we don't need to ignore that error. - httpStatusCode = errorString.mid(0, errorString.indexOf(QChar(' '))).toInt(); - _item._httpErrorCode = httpStatusCode; - qDebug() << Q_FUNC_INFO << "NE_ERROR" << errorString << httpStatusCode << ignoreHttpCode; - if (ignoreHttpCode && httpStatusCode == ignoreHttpCode) - return false; - - done(SyncFileItem::NormalError, errorString); - return true; - case NE_LOOKUP: /* Server or proxy hostname lookup failed */ - case NE_AUTH: /* User authentication failed on server */ - case NE_PROXYAUTH: /* User authentication failed on proxy */ - case NE_CONNECT: /* Could not connect to server */ - case NE_TIMEOUT: /* Connection timed out */ - done(SyncFileItem::FatalError, QString::fromUtf8(ne_get_error(_propagator->_session))); - return true; - case NE_FAILED: /* The precondition failed */ - case NE_RETRY: /* Retry request (ne_end_request ONLY) */ - case NE_REDIRECT: /* See ne_redirect.h */ - default: - done(SyncFileItem::SoftError, QString::fromUtf8(ne_get_error(_propagator->_session))); - return true; - } - return false; -} - -void UpdateMTimeAndETagJob::start() -{ - QScopedPointer uri( - ne_path_escape((_propagator->_remoteDir + _item._file).toUtf8())); - if (!updateMTimeAndETag(uri.data(), _item._modtime)) - return; - done(SyncFileItem::Success); -} - - - } diff --git a/src/libsync/propagatorjobs.h b/src/libsync/propagatorjobs.h index e622880ee..57218b675 100644 --- a/src/libsync/propagatorjobs.h +++ b/src/libsync/propagatorjobs.h @@ -17,59 +17,11 @@ #include "owncloudpropagator.h" #include -#include #include #include namespace Mirall { -/* Helper for QScopedPointer<>, to be used as the deleter. - * QScopePointer will call the right overload of cleanup for the pointer it holds - */ -struct ScopedPointerHelpers { - static inline void cleanup(hbf_transfer_t *pointer) { if (pointer) hbf_free_transfer(pointer); } - static inline void cleanup(ne_request *pointer) { if (pointer) ne_request_destroy(pointer); } - static inline void cleanup(ne_decompress *pointer) { if (pointer) ne_decompress_destroy(pointer); } -// static inline void cleanup(ne_propfind_handler *pointer) { if (pointer) ne_propfind_destroy(pointer); } -}; - -/* - * Abstract class for neon job. Lives in the neon thread - */ -class PropagateNeonJob : public PropagateItemJob { - Q_OBJECT -protected: - - /* Issue a PROPPATCH and PROPFIND to update the mtime, and fetch the etag - * Return true in case of success, and false if the PROPFIND failed and the - * error has been reported - */ - bool updateMTimeAndETag(const char *uri, time_t); - - /* fetch the error code and string from the session - in case of error, calls done with the error and returns true. - - If the HTTP error code is ignoreHTTPError, the error is ignored - */ - bool updateErrorFromSession(int neon_code = 0, ne_request *req = 0, int ignoreHTTPError = 0); - - /* - * to be called by the progress callback and will wait the amount of time needed. - */ - void limitBandwidth(qint64 progress, qint64 limit); - - QElapsedTimer _lastTime; - qint64 _lastProgress; - int _httpStatusCode; - -public: - PropagateNeonJob(OwncloudPropagator* propagator, const SyncFileItem &item) - : PropagateItemJob(propagator, item), _lastProgress(0), _httpStatusCode(0) { - moveToThread(propagator->_neonThread); - } - -}; - class PropagateLocalRemove : public PropagateItemJob { Q_OBJECT public: @@ -90,13 +42,5 @@ public: void start() Q_DECL_OVERRIDE; }; -// To support older owncloud in the -class UpdateMTimeAndETagJob : public PropagateNeonJob{ - Q_OBJECT -public: - UpdateMTimeAndETagJob (OwncloudPropagator* propagator, const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start() Q_DECL_OVERRIDE; -}; - } From c73522de2ec24bafbdc40230708b0716db623b3d Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 14 Nov 2014 16:39:39 +0100 Subject: [PATCH 24/87] Remove ChunkBlock It is not in used --- src/libsync/propagateupload.h | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/src/libsync/propagateupload.h b/src/libsync/propagateupload.h index 412059715..c2e9e73df 100644 --- a/src/libsync/propagateupload.h +++ b/src/libsync/propagateupload.h @@ -22,31 +22,6 @@ namespace Mirall { -class ChunkBlock { - -public: - explicit ChunkBlock() : _state(NotTransfered) { } - enum State { - CHUNK_SUCCESS, - NotTransfered, /* never tried to transfer */ - Transfered, /* transfer currently running */ - TransferFailed, /* transfer tried but failed */ - TransferSuccess, /* block transfer succeeded. */ - Fail - }; - - int _sequenceNo; - int64_t _start; - int64_t _size; - - State _state; - int _httpResultCode; - QString _httpErrorMsg; - QString _etag; - QBuffer *_buffer; - -}; - class PUTFileJob : public AbstractNetworkJob { Q_OBJECT QSharedPointer _device; From ad92e7b888013a6fe3ebb1a10b260ba9c39f2967 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 14 Nov 2014 16:40:13 +0100 Subject: [PATCH 25/87] Move UploadDevice to the right header --- src/libsync/owncloudpropagator.h | 38 -------------------------------- src/libsync/propagateupload.h | 35 +++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 38 deletions(-) diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index cdafbf503..3d0df86d1 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -183,44 +183,6 @@ public: } }; -class BandwidthManager; // fwd -class UploadDevice : public QIODevice { - Q_OBJECT -public: - QPointer _file; - qint64 _read; - qint64 _size; - qint64 _start; - BandwidthManager* _bandwidthManager; - - qint64 _bandwidthQuota; - qint64 _readWithProgress; - - UploadDevice(QIODevice *file, qint64 start, qint64 size, BandwidthManager *bwm); - ~UploadDevice(); - virtual qint64 writeData(const char* , qint64 ); - virtual qint64 readData(char* data, qint64 maxlen); - virtual bool atEnd() const; - virtual qint64 size() const; - qint64 bytesAvailable() const; - virtual bool isSequential() const; - virtual bool seek ( qint64 pos ); - - void setBandwidthLimited(bool); - bool isBandwidthLimited() { return _bandwidthLimited; } - void setChoked(bool); - bool isChoked() { return _choked; } - void giveBandwidthQuota(qint64 bwq); -private: - bool _bandwidthLimited; // if _bandwidthQuota will be used - bool _choked; // if upload is paused (readData() will return 0) -protected slots: - void slotJobUploadProgress(qint64 sent, qint64 t); -}; -//Q_DECLARE_METATYPE(UploadDevice); -//Q_DECLARE_METATYPE(QPointer); - - class OwncloudPropagator : public QObject { Q_OBJECT diff --git a/src/libsync/propagateupload.h b/src/libsync/propagateupload.h index c2e9e73df..a963773ce 100644 --- a/src/libsync/propagateupload.h +++ b/src/libsync/propagateupload.h @@ -21,6 +21,41 @@ #include namespace Mirall { +class BandwidthManager; + +class UploadDevice : public QIODevice { + Q_OBJECT +public: + QPointer _file; + qint64 _read; + qint64 _size; + qint64 _start; + BandwidthManager* _bandwidthManager; + + qint64 _bandwidthQuota; + qint64 _readWithProgress; + + UploadDevice(QIODevice *file, qint64 start, qint64 size, BandwidthManager *bwm); + ~UploadDevice(); + virtual qint64 writeData(const char* , qint64 ); + virtual qint64 readData(char* data, qint64 maxlen); + virtual bool atEnd() const; + virtual qint64 size() const; + qint64 bytesAvailable() const; + virtual bool isSequential() const; + virtual bool seek ( qint64 pos ); + + void setBandwidthLimited(bool); + bool isBandwidthLimited() { return _bandwidthLimited; } + void setChoked(bool); + bool isChoked() { return _choked; } + void giveBandwidthQuota(qint64 bwq); +private: + bool _bandwidthLimited; // if _bandwidthQuota will be used + bool _choked; // if upload is paused (readData() will return 0) +protected slots: + void slotJobUploadProgress(qint64 sent, qint64 t); +}; class PUTFileJob : public AbstractNetworkJob { Q_OBJECT From a3b21022af8797f3db13ae70ad887f7c94b53cc4 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 14 Nov 2014 17:29:28 +0100 Subject: [PATCH 26/87] new bandwith limiting: Do a test on the Qt version to activate it We need Qt 5.3.3. If the compiled qt version is Qt 5 but smaller than Qt 5.3.3, do a runtime check. OWNCLOUD_NEW_BANDWIDTH_LIMITING is still there for a special setup in which we patch Qt with the patches --- src/libsync/owncloudpropagator.cpp | 36 +++++++++++++++++++----------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index b0ff532e8..fedf39d56 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -344,21 +344,31 @@ bool OwncloudPropagator::useLegacyJobs() return true; } - env = qgetenv("OWNCLOUD_NEW_BANDWIDTH_LIMITING"); - if (env=="true" || env =="1") { - qDebug() << "New Bandwidth Limiting Code ACTIVATED"; - // Only certain Qt versions support this at the moment. - // They need those Change-Ids: Idb1c2d5a382a704d8cc08fe03c55c883bfc95aa7 Iefbcb1a21d8aedef1eb11761232dd16a049018dc - // FIXME We need to check the Qt version and then also return false here as soon - // as mirall ships with those Qt versions on Windows and OS X - return false; - } - if (_downloadLimit.fetchAndAddAcquire(0) != 0 || _uploadLimit.fetchAndAddAcquire(0) != 0) { - qDebug() << "Switching To Legacy Propagator Because Of Bandwidth Limit ACTIVATED"; - // QNAM does not support bandwith limiting - // in most Qt versions. + // QNAM bandwith limiting only work with version of Qt greater or equal to 5.3.3 + // (It needs Qt commits 097b641 and b99fa32) +#if QT_VERSION >= QT_VERSION_CHECK(5,3,3) return true; +#elif QT_VERSION >= QT_VERSION_CHECK(5,0,0) + env = qgetenv("OWNCLOUD_NEW_BANDWIDTH_LIMITING"); + if (env=="true" || env =="1") { + qDebug() << "New Bandwidth Limiting Code ACTIVATED"; + return true; + } + + // Do a runtime check. + // (Poor man's version comparison) + const char *v = qVersion(); // "x.y.z"; + if (QLatin1String(v) >= QLatin1String("5.3.3")) { + return true; + } else { + qDebug() << "Use legacy jobs because qt version is only" << v << "while 5.3.3 is needed"; + return false; + } +#else + qDebug() << "Use legacy jobs because of Qt4"; + return false; +#endif } return false; From 67b0e4dd155cd789e77d7709b36a1e1a1ef146db Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sat, 15 Nov 2014 01:25:23 -0500 Subject: [PATCH 27/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 30 +++++++++++----------- translations/mirall_cs.ts | 30 +++++++++++----------- translations/mirall_de.ts | 30 +++++++++++----------- translations/mirall_el.ts | 30 +++++++++++----------- translations/mirall_en.ts | 30 +++++++++++----------- translations/mirall_es.ts | 30 +++++++++++----------- translations/mirall_es_AR.ts | 30 +++++++++++----------- translations/mirall_et.ts | 30 +++++++++++----------- translations/mirall_eu.ts | 30 +++++++++++----------- translations/mirall_fa.ts | 30 +++++++++++----------- translations/mirall_fi.ts | 30 +++++++++++----------- translations/mirall_fr.ts | 30 +++++++++++----------- translations/mirall_gl.ts | 30 +++++++++++----------- translations/mirall_hu.ts | 30 +++++++++++----------- translations/mirall_it.ts | 36 +++++++++++++++------------ translations/mirall_ja.ts | 36 +++++++++++++++------------ translations/mirall_nl.ts | 30 +++++++++++----------- translations/mirall_pl.ts | 30 +++++++++++----------- translations/mirall_pt.ts | 30 +++++++++++----------- translations/mirall_pt_BR.ts | 30 +++++++++++----------- translations/mirall_ru.ts | 30 +++++++++++----------- translations/mirall_sk.ts | 30 +++++++++++----------- translations/mirall_sl.ts | 48 ++++++++++++++++++++++-------------- translations/mirall_sv.ts | 30 +++++++++++----------- translations/mirall_th.ts | 30 +++++++++++----------- translations/mirall_tr.ts | 30 +++++++++++----------- translations/mirall_uk.ts | 30 +++++++++++----------- translations/mirall_zh_CN.ts | 30 +++++++++++----------- translations/mirall_zh_TW.ts | 30 +++++++++++----------- 29 files changed, 460 insertions(+), 440 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 51f5ecb47..3744e19b7 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? El fitxer conté caràcters no vàlids que no es poden sincronitzar entre plataformes. - + Unable to initialize a sync journal. No es pot inicialitzar un periòdic de sincronització - + Cannot open the sync journal No es pot obrir el diari de sincronització - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory No es permet perquè no teniu permisos per afegir subcarpetes en aquesta carpeta - + Not allowed because you don't have permission to add parent directory No es permet perquè no teniu permisos per afegir una carpeta inferior - + Not allowed because you don't have permission to add files in that directory No es permet perquè no teniu permisos per afegir fitxers en aquesta carpeta - + Not allowed to upload this file because it is read-only on the server, restoring No es permet pujar aquest fitxer perquè només és de lectura en el servidor, es restaura - - + + Not allowed to remove, restoring No es permet l'eliminació, es restaura - + Local files and share folder removed. Fitxers locals i carpeta compartida esborrats. - + Move not allowed, item restored No es permet moure'l, l'element es restaura - + Move not allowed because %1 is read-only No es permet moure perquè %1 només és de lectura - + the destination el destí - + the source l'origen diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 7e0d4b935..c173e97a7 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -2072,69 +2072,69 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)?Soubor obsahuje alespoň jeden neplatný znak, který narušuje synchronizaci v prostředí více platforem. - + Unable to initialize a sync journal. Nemohu inicializovat synchronizační žurnál. - + Cannot open the sync journal Nelze otevřít synchronizační žurnál - - + + Ignored because of the "choose what to sync" blacklist Ignorováno podle nastavení "vybrat co synchronizovat" - + Not allowed because you don't have permission to add sub-directories in that directory Není povoleno, protože nemáte oprávnění vytvářet podadresáře v tomto adresáři. - + Not allowed because you don't have permission to add parent directory Není povoleno, protože nemáte oprávnění vytvořit rodičovský adresář - + Not allowed because you don't have permission to add files in that directory Není povoleno, protože nemáte oprávnění přidávat soubory do tohoto adresáře - + Not allowed to upload this file because it is read-only on the server, restoring Není povoleno nahrát tento soubor, protože je na serveru uložen pouze pro čtení, obnovuji - - + + Not allowed to remove, restoring Odstranění není povoleno, obnovuji - + Local files and share folder removed. Místní soubory a sdílený adresář byly odstraněny. - + Move not allowed, item restored Přesun není povolen, položka obnovena - + Move not allowed because %1 is read-only Přesun není povolen, protože %1 je pouze pro čtení - + the destination cílové umístění - + the source zdroj diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 762b61024..af945f38a 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -2069,69 +2069,69 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)?Die Datei beinhaltet ungültige Zeichen und kann nicht plattformübergreifend synchronisiert werden. - + Unable to initialize a sync journal. Synchronisationsbericht konnte nicht initialisiert werden. - + Cannot open the sync journal Synchronisationsbericht kann nicht geöffnet werden - - + + Ignored because of the "choose what to sync" blacklist Aufgrund der »Zu synchronisierende Elemente auswählen«-Sperrliste ignoriert - + Not allowed because you don't have permission to add sub-directories in that directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Unterordnern haben - + Not allowed because you don't have permission to add parent directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Hauptordnern haben - + Not allowed because you don't have permission to add files in that directory Nicht erlaubt, da Sie keine Rechte zum Hinzufügen von Dateien in diesen Ordner haben - + Not allowed to upload this file because it is read-only on the server, restoring Das Hochladen dieser Datei ist nicht erlaubt, da die Datei auf dem Server schreibgeschützt ist, Wiederherstellung - - + + Not allowed to remove, restoring Löschen nicht erlaubt, Wiederherstellung - + Local files and share folder removed. Lokale Dateien und Freigabeordner wurden entfernt. - + Move not allowed, item restored Verschieben nicht erlaubt, Element wiederhergestellt - + Move not allowed because %1 is read-only Verschieben nicht erlaubt, da %1 schreibgeschützt ist - + the destination Das Ziel - + the source Die Quelle diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index a95751c76..323d458c5 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -2063,69 +2063,69 @@ Do you want to connect unencrypted instead (not recommended)? Το αρχείο περιέχει άκυρους χαρακτήρες που δεν μπορούν να συγχρονιστούν σε όλα τα συστήματα. - + Unable to initialize a sync journal. Αδυναμία προετοιμασίας αρχείου συγχρονισμού. - + Cannot open the sync journal Αδυναμία ανοίγματος του αρχείου συγχρονισμού - - + + Ignored because of the "choose what to sync" blacklist Αγνοήθηκε εξαιτίας της μαύρης λίστας "διάλεξε τι να συγχρονιστεί" - + Not allowed because you don't have permission to add sub-directories in that directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε υπο-καταλόγους σε αυτό τον κατάλογο - + Not allowed because you don't have permission to add parent directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε στο γονεϊκό κατάλογο - + Not allowed because you don't have permission to add files in that directory Δεν επιτρέπεται επειδή δεν έχεται δικαιώματα να προσθέσετε αρχεία σε αυτόν τον κατάλογο - + Not allowed to upload this file because it is read-only on the server, restoring Δεν επιτρέπεται να μεταφορτώσετε αυτό το αρχείο επειδή είναι μόνο για ανάγνωση στο διακομιστή, αποκατάσταση σε εξέλιξη - - + + Not allowed to remove, restoring Δεν επιτρέπεται η αφαίρεση, αποκατάσταση σε εξέλιξη - + Local files and share folder removed. Οι τοπικοί φάκελοι και ο φάκελος κοινής χρήσης αφαιρέθηκαν. - + Move not allowed, item restored Η μετακίνηση δεν επιτρέπεται, το αντικείμενο αποκαταστάθηκε - + Move not allowed because %1 is read-only Η μετακίνηση δεν επιτρέπεται επειδή το %1 είναι μόνο για ανάγνωση - + the destination ο προορισμός - + the source η προέλευση diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 298f24466..33074ee90 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -2061,69 +2061,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 3f1991ea9..2a71deb45 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -2070,69 +2070,69 @@ Desea conectar a cambio sin encriptación (no recomendado)? El fichero contiene caracteres inválidos que no pueden ser sincronizados con la plataforma. - + Unable to initialize a sync journal. No se pudo inicializar un registro (journal) de sincronización. - + Cannot open the sync journal No es posible abrir el diario de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado por que se encuentra en la lista negra de "elige que vas a sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory No está permitido, porque no tiene permisos para añadir subcarpetas en este directorio. - + Not allowed because you don't have permission to add parent directory No está permitido porque no tiene permisos para añadir un directorio - + Not allowed because you don't have permission to add files in that directory No está permitido, porque no tiene permisos para crear archivos en este directorio - + Not allowed to upload this file because it is read-only on the server, restoring No está permitido subir este archivo porque es de solo lectura en el servidor, restaurando. - - + + Not allowed to remove, restoring No está permitido borrar, restaurando. - + Local files and share folder removed. Se eliminaron los archivos locales y la carpeta compartida. - + Move not allowed, item restored No está permitido mover, elemento restaurado. - + Move not allowed because %1 is read-only No está permitido mover, porque %1 es solo lectura. - + the destination destino - + the source origen diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index 61aacc8d5..cd98566a6 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -2057,69 +2057,69 @@ Do you want to connect unencrypted instead (not recommended)? El archivo contiene caracteres inválidos que no pueden ser sincronizados entre plataforma. - + Unable to initialize a sync journal. Imposible inicializar un diario de sincronización. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index f5acd6a4b..1b34035ee 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -2065,69 +2065,69 @@ Do you want to connect unencrypted instead (not recommended)? Fail sisaldab sobimatuid sümboleid, mida ei saa sünkroniseerida erinevate platvormide vahel. - + Unable to initialize a sync journal. Ei suuda lähtestada sünkroniseeringu zurnaali. - + Cannot open the sync journal Ei suuda avada sünkroniseeringu zurnaali - - + + Ignored because of the "choose what to sync" blacklist "Vali, mida sünkroniseerida" musta nimekirja tõttu vahele jäetud - + Not allowed because you don't have permission to add sub-directories in that directory Pole lubatud, kuna sul puuduvad õigused lisada sellesse kataloogi lisada alam-kataloogi - + Not allowed because you don't have permission to add parent directory Pole lubatud, kuna sul puuduvad õigused lisada ülemkataloog - + Not allowed because you don't have permission to add files in that directory Pole lubatud, kuna sul puuduvad õigused sellesse kataloogi faile lisada - + Not allowed to upload this file because it is read-only on the server, restoring Pole lubatud üles laadida, kuna tegemist on ainult-loetava serveriga, taastan - - + + Not allowed to remove, restoring Eemaldamine pole lubatud, taastan - + Local files and share folder removed. Kohalikud failid ja jagatud kaustad eemaldatud. - + Move not allowed, item restored Liigutamine pole lubatud, üksus taastatud - + Move not allowed because %1 is read-only Liigutamien pole võimalik kuna %1 on ainult lugemiseks - + the destination sihtkoht - + the source allikas diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index dfb30474b..3aa369202 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -2060,69 +2060,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. Ezin izan da sinkronizazio egunerokoa hasieratu. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Ezabatzeko baimenik gabe, berrezartzen - + Local files and share folder removed. - + Move not allowed, item restored Mugitzea ez dago baimenduta, elementua berrezarri da - + Move not allowed because %1 is read-only Mugitzea ez dago baimenduta %1 irakurtzeko bakarrik delako - + the destination helburua - + the source jatorria diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index 9bc25f854..6a7864467 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -2053,69 +2053,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 5864c3966..1bd0c0de5 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -2058,69 +2058,69 @@ Do you want to connect unencrypted instead (not recommended)? Tiedosto sisältää virheellisiä merkkejä, joiden vuoksi sitä voi synkronoida eri käyttöjärjestelmien välillä. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory Ei sallittu, koska sinulla ei ole oikeutta lisätä tiedostoja kyseiseen kansioon - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Poistaminen ei ole sallittua, palautetaan - + Local files and share folder removed. Paikalliset tiedostot ja jakokansio poistettu. - + Move not allowed, item restored Siirtäminen ei ole sallittua, kohde palautettu - + Move not allowed because %1 is read-only Siirto ei ole sallittu, koska %1 on "vain luku"-tilassa - + the destination kohde - + the source lähde diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 326097d58..b615b7ce3 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -2070,69 +2070,69 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ?Le fichier contient des caractères non valides qui ne peuvent être synchronisés entre plate-formes. - + Unable to initialize a sync journal. Impossible d'initialiser un journal de synchronisation. - + Cannot open the sync journal Impossible d'ouvrir le journal de synchronisation - - + + Ignored because of the "choose what to sync" blacklist Ignoré à cause de la liste noire du contenu à synchroniser. - + Not allowed because you don't have permission to add sub-directories in that directory Non autorisé car vous n'avez pas la permission d'ajouter des sous-dossiers dans ce dossier - + Not allowed because you don't have permission to add parent directory Non autorisé car vous n'avez pas la permission d'ajouter des dossiers parents - + Not allowed because you don't have permission to add files in that directory Non autorisé car vous n'avez pas la permission d'ajouter des fichiers dans ce dossier - + Not allowed to upload this file because it is read-only on the server, restoring Non autorisé à envoyer ce fichier car il est en lecture seule sur le serveur. Restauration - - + + Not allowed to remove, restoring Non autorisé à supprimer. Restauration - + Local files and share folder removed. Fichiers locaux et répertoire de partage supprimés. - + Move not allowed, item restored Déplacement non autorisé, élément restauré - + Move not allowed because %1 is read-only Déplacement non autorisé car %1 est en mode lecture seule - + the destination la destination - + the source la source diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 81925ddb8..4873e91ca 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? O ficheiro conten caracteres incorrectos que non poden sincronizarse entre distintas plataformas. - + Unable to initialize a sync journal. Non é posíbel iniciar un rexistro de sincronización. - + Cannot open the sync journal Non foi posíbel abrir o rexistro de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado debido a lista negra de "escolla qué sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Non está permitido xa que non ten permiso para engadir subdirectorios nese directorio - + Not allowed because you don't have permission to add parent directory Non está permitido xa que non ten permiso para engadir un directorio pai - + Not allowed because you don't have permission to add files in that directory Non está permitido xa que non ten permiso para engadir ficheiros nese directorio - + Not allowed to upload this file because it is read-only on the server, restoring Non está permitido o envío xa que o ficheiro é só de lectura no servidor, restaurando - - + + Not allowed to remove, restoring Non está permitido retiralo, restaurando - + Local files and share folder removed. Ficheiros locáis e cartafol compartido eliminados. - + Move not allowed, item restored Nos está permitido movelo, elemento restaurado - + Move not allowed because %1 is read-only Bon está permitido movelo xa que %1 é só de lectura - + the destination o destino - + the source a orixe diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index 961b0c269..649c5e6b7 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -2053,69 +2053,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index e4d3693dc..cd01431c8 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -1117,7 +1117,11 @@ Non è consigliabile utilizzarlo. %1 Do you want to connect unencrypted instead (not recommended)? - + Impossibile connettersi in modo sicuro: + +%1 + +Vuoi invece connetterti senza cifratura (non consigliato)? @@ -2065,69 +2069,69 @@ Do you want to connect unencrypted instead (not recommended)? Il file contiene caratteri non validi che non possono essere sincronizzati su diverse piattaforme. - + Unable to initialize a sync journal. Impossibile inizializzare il registro di sincronizzazione. - + Cannot open the sync journal Impossibile aprire il registro di sincronizzazione - - + + Ignored because of the "choose what to sync" blacklist Ignorato in base alla lista nera per la scelta di cosa sincronizzare - + Not allowed because you don't have permission to add sub-directories in that directory Non consentito poiché non disponi dei permessi per aggiungere sottocartelle in quella cartella - + Not allowed because you don't have permission to add parent directory Non consentito poiché non disponi dei permessi per aggiungere la cartella superiore - + Not allowed because you don't have permission to add files in that directory Non consentito poiché non disponi dei permessi per aggiungere file in quella cartella - + Not allowed to upload this file because it is read-only on the server, restoring Il caricamento di questo file non è consentito poiché è in sola lettura sul server, ripristino - - + + Not allowed to remove, restoring Rimozione non consentita, ripristino - + Local files and share folder removed. I file locali e la cartella condivisa sono stati rimossi. - + Move not allowed, item restored Spostamento non consentito, elemento ripristinato - + Move not allowed because %1 is read-only Spostamento non consentito poiché %1 è in sola lettura - + the destination la destinazione - + the source l'origine diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index 3b40f592b..fdf8bd673 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -1116,7 +1116,11 @@ It is not advisable to use it. %1 Do you want to connect unencrypted instead (not recommended)? - + 安全な接続ができませんでした: + +%1 + +非暗号化接続しますか?(推奨されません) @@ -2062,69 +2066,69 @@ Do you want to connect unencrypted instead (not recommended)? ファイルに無効な文字が含まれているため、クロスプラットフォーム環境での同期ができません。 - + Unable to initialize a sync journal. 同期ジャーナルの初期化ができません。 - + Cannot open the sync journal 同期ジャーナルを開くことができません - - + + Ignored because of the "choose what to sync" blacklist "同期対象先" ブラックリストにより無視されました。 - + Not allowed because you don't have permission to add sub-directories in that directory そのディレクトリにサブディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add parent directory 親ディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add files in that directory そのディレクトリにファイルを追加する権限がありません - + Not allowed to upload this file because it is read-only on the server, restoring サーバーでは読み取り専用となっているため、このファイルをアップロードすることはできません、復元しています - - + + Not allowed to remove, restoring 削除できません、復元しています - + Local files and share folder removed. ローカルファイルと共有フォルダが削除されました。 - + Move not allowed, item restored 移動できません、項目を復元しました - + Move not allowed because %1 is read-only %1 は読み取り専用のため移動できません - + the destination 移動先 - + the source 移動元 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 1aadb85c6..e1b09d9ee 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -2069,69 +2069,69 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Bestand bevat ongeldige karakters die niet tussen platformen gesynchroniseerd kunnen worden. - + Unable to initialize a sync journal. Niet in staat om een synchronisatie transactielog te starten. - + Cannot open the sync journal Kan het sync transactielog niet openen - - + + Ignored because of the "choose what to sync" blacklist Genegeerd vanwege de "kies wat te synchen" zwarte lijst - + Not allowed because you don't have permission to add sub-directories in that directory Niet toegestaan, omdat u geen rechten hebt om sub-directories aan te maken in die directory - + Not allowed because you don't have permission to add parent directory Niet toegestaan, omdat u geen rechten hebt om een bovenliggende directories toe te voegen - + Not allowed because you don't have permission to add files in that directory Niet toegestaan, omdat u geen rechten hebt om bestanden in die directory toe te voegen - + Not allowed to upload this file because it is read-only on the server, restoring Niet toegestaan om dit bestand te uploaden, omdat het alleen-lezen is op de server, herstellen - - + + Not allowed to remove, restoring Niet toegestaan te verwijderen, herstellen - + Local files and share folder removed. Lokale bestanden en share-map verwijderd. - + Move not allowed, item restored Verplaatsen niet toegestaan, object hersteld - + Move not allowed because %1 is read-only Verplaatsen niet toegestaan omdat %1 alleen-lezen is - + the destination bestemming - + the source bron diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index d5078b67f..e661f874d 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? Plik zawiera nieprawidłowe znaki, które nie mogą być synchronizowane wieloplatformowo. - + Unable to initialize a sync journal. Nie można zainicjować synchronizacji dziennika. - + Cannot open the sync journal Nie można otworzyć dziennika synchronizacji - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie masz uprawnień do dodawania podkatalogów w tym katalogu. - + Not allowed because you don't have permission to add parent directory Nie masz uprawnień by dodać katalog nadrzędny - + Not allowed because you don't have permission to add files in that directory Nie masz uprawnień by dodać pliki w tym katalogu - + Not allowed to upload this file because it is read-only on the server, restoring Wgrywanie niedozwolone, ponieważ plik jest tylko do odczytu na serwerze, przywracanie - - + + Not allowed to remove, restoring Brak uprawnień by usunąć, przywracanie - + Local files and share folder removed. - + Move not allowed, item restored Przenoszenie niedozwolone, obiekt przywrócony - + Move not allowed because %1 is read-only Przenoszenie niedozwolone, ponieważ %1 jest tylko do odczytu - + the destination docelowy - + the source źródło diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index e0bfa2a50..efeae5811 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -2064,69 +2064,69 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n O ficheiro contém caracteres inválidos que não podem ser sincronizados pelas várias plataformas. - + Unable to initialize a sync journal. Impossível inicializar sincronização 'journal'. - + Cannot open the sync journal Impossível abrir o jornal de sincronismo - - + + Ignored because of the "choose what to sync" blacklist Ignorado devido à blacklist de escolha para sincronização - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido, porque não tem permissão para adicionar sub-directórios ao directório - + Not allowed because you don't have permission to add parent directory Não permitido, porque não tem permissão para adicionar o directório principal - + Not allowed because you don't have permission to add files in that directory Não permitido, porque não tem permissão para adicionar ficheiros no directório - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o envio deste ficheiro porque é só de leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não autorizado para remoção, restaurando - + Local files and share folder removed. Ficheiros locais e pasta partilhada removidos. - + Move not allowed, item restored Mover não foi permitido, item restaurado - + Move not allowed because %1 is read-only Mover não foi autorizado porque %1 é só de leitura - + the destination o destino - + the source a origem diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index 3a53762e7..547693d0a 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -2064,69 +2064,69 @@ Você deseja se conectar sem criptografia (não recomendado)? Arquivos que contém caracteres inválidos não podem ser sincronizados através de plataformas. - + Unable to initialize a sync journal. Impossibilitado de iniciar a sincronização. - + Cannot open the sync journal Não é possível abrir o arquivo de sincronização - - + + Ignored because of the "choose what to sync" blacklist Ignorado por causa da lista negra "escolher o que sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido porque você não tem permissão de criar sub-pastas nesta pasta - + Not allowed because you don't have permission to add parent directory Não permitido porque você não tem permissão de criar pastas mãe - + Not allowed because you don't have permission to add files in that directory Não permitido porque você não tem permissão de adicionar arquivos a esta pasta - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o upload deste arquivo porque ele é somente leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não é permitido remover, restaurando - + Local files and share folder removed. Arquivos locais e pasta compartilhada removida. - + Move not allowed, item restored Não é permitido mover, item restaurado - + Move not allowed because %1 is read-only Não é permitido mover porque %1 é somente para leitura - + the destination o destino - + the source a fonte diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 2528a0839..043e124a7 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? Файл содержит недопустимые символы, которые невозможно синхронизировать между платформами. - + Unable to initialize a sync journal. Не удалось инициализировать журнал синхронизации. - + Cannot open the sync journal Не удаётся открыть журнал синхронизации - - + + Ignored because of the "choose what to sync" blacklist Игнорируется из-за черного списка в "выбрать что синхронизировать" - + Not allowed because you don't have permission to add sub-directories in that directory Недопустимо из-за отсутствия у вас разрешений на добавление подпапок в этой папке - + Not allowed because you don't have permission to add parent directory Недопустимо из-за отсутствия у вас разрешений на добавление родительской папки - + Not allowed because you don't have permission to add files in that directory Недопустимо из-за отсутствия у вас разрешений на добавление файлов в эту папку - + Not allowed to upload this file because it is read-only on the server, restoring Недопустимо отправить этот файл поскольку на севрере он помечен только для чтения, восстанавливаем - - + + Not allowed to remove, restoring Недопустимо удалить, восстанавливаем - + Local files and share folder removed. Локальные файлы и папки, добавленные в общий доступ, удалены. - + Move not allowed, item restored Перемещение недопустимо, элемент восстановлен - + Move not allowed because %1 is read-only Перемещение недопустимо, поскольку %1 помечен только для чтения - + the destination Назначение - + the source Источник diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 0712a3dc0..be969c104 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? Súbor obsahuje neplatné znaky, ktoré nemôžu byť zosynchronizované medzi platformami. - + Unable to initialize a sync journal. Nemôžem inicializovať synchronizačný žurnál. - + Cannot open the sync journal Nemožno otvoriť sync žurnál - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára podadresáre. - + Not allowed because you don't have permission to add parent directory Nie je dovolené, pretože nemáte oprávnenie pridať nadradený adresár. - + Not allowed because you don't have permission to add files in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára súbory. - + Not allowed to upload this file because it is read-only on the server, restoring Nie je dovolené tento súbor nahrať, pretože je na serveri iba na čítanie. Obnovuje sa. - - + + Not allowed to remove, restoring Nie je dovolené odstrániť. Obnovuje sa. - + Local files and share folder removed. - + Move not allowed, item restored Presunutie nie je dovolené. Položka obnovená. - + Move not allowed because %1 is read-only Presunutie nie je dovolené, pretože %1 je na serveri iba na čítanie - + the destination cieľ - + the source zdroj diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index a65b18e69..6ecec88f2 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -1118,7 +1118,11 @@ Uporaba ni priporočljiva. %1 Do you want to connect unencrypted instead (not recommended)? - + Ni mogoče vzpostaviti varne povezave: + +%1 + +Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? @@ -1550,13 +1554,21 @@ Do you want to connect unencrypted instead (not recommended)? %n files are ignored because of previous errors. - + Zaradi predhodnih napak je prezrta %n datoteka. +Zaradi predhodnih napak sta prezrti %n datoteki. +Zaradi predhodnih napak so prezrte %n datoteke. +Zaradi predhodnih napak je prezrtih %n datotek. + %n files are partially downloaded. - + Prenos %n datoteke še ni končan. +Prenos %n datotek še ni končan. +Prenos %n datotek še ni končan. +Prenos %n datotek še ni končan. + @@ -2062,69 +2074,69 @@ Do you want to connect unencrypted instead (not recommended)? Ime datoteke vsebuje neveljavne znake, ki niso podprti na vseh okoljih. - + Unable to initialize a sync journal. Dnevnika usklajevanja ni mogoče začeti. - + Cannot open the sync journal Ni mogoče odpreti dnevnika usklajevanja - - + + Ignored because of the "choose what to sync" blacklist Prezrto, ker ni neizbrano za usklajevanje - + Not allowed because you don't have permission to add sub-directories in that directory Ni ustreznih dovoljenj za dodajanje podmap v izbrano mapo. - + Not allowed because you don't have permission to add parent directory Ni ustreznih dovoljenj za dodajanje nadrejene mape. - + Not allowed because you don't have permission to add files in that directory Ni ustreznih dovoljenj za dodajanje datotek v izbrano mapo. - + Not allowed to upload this file because it is read-only on the server, restoring Ni dovoljeno pošiljati te datoteke, ker ima določena dovoljenja le za branje. Datoteka bo obnovljena na izvorno različico. - - + + Not allowed to remove, restoring Odstranitev ni dovoljena, datoteka bo obnovljena. - + Local files and share folder removed. Krajevne datoteke in mape v souporabi so odstranjene. - + Move not allowed, item restored Premikanje ni dovoljeno, datoteka bo obnovljena. - + Move not allowed because %1 is read-only Premikanje ni dovoljeno, ker je nastavljeno določilo %1 le za branje. - + the destination cilj - + the source vir diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index a6d62ca72..77c020007 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -2062,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? Filen innehåller ogiltiga tecken som inte kan synkas oberoende av plattform. - + Unable to initialize a sync journal. Kan inte initialisera en synk journal. - + Cannot open the sync journal Kunde inte öppna synk journalen - - + + Ignored because of the "choose what to sync" blacklist Ignorerad eftersom den är svartlistad i "välj vad som ska synkas" - + Not allowed because you don't have permission to add sub-directories in that directory Går ej att genomföra då du saknar rättigheter att lägga till underkataloger i den katalogen - + Not allowed because you don't have permission to add parent directory Går ej att genomföra då du saknar rättigheter att lägga till någon moderkatalog - + Not allowed because you don't have permission to add files in that directory Går ej att genomföra då du saknar rättigheter att lägga till filer i den katalogen - + Not allowed to upload this file because it is read-only on the server, restoring Inte behörig att ladda upp denna fil då den är skrivskyddad på servern, återställer - - + + Not allowed to remove, restoring Inte behörig att radera, återställer - + Local files and share folder removed. Lokala filer och mappar som är delade är borttagna. - + Move not allowed, item restored Det gick inte att genomföra flytten, objektet återställs - + Move not allowed because %1 is read-only Det gick inte att genomföra flytten då %1 är skrivskyddad - + the destination destinationen - + the source källan diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index e72b34054..509353d3d 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -2053,69 +2053,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 242b2fe53..cdb7e46b0 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -2066,69 +2066,69 @@ Do you want to connect unencrypted instead (not recommended)? Dosya, çapraz platform arasında eşitlenemeyecek karakterler içeriyor. - + Unable to initialize a sync journal. Bir eşitleme günlüğü başlatılamadı. - + Cannot open the sync journal Eşitleme günlüğü açılamıyor - - + + Ignored because of the "choose what to sync" blacklist "Eşitlenecekleri seçin" kara listesinde olduğundan yoksayıldı. - + Not allowed because you don't have permission to add sub-directories in that directory Bu dizine alt dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add parent directory Üst dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add files in that directory Bu dizine dosya ekleme yetkiniz olmadığından izin verilmedi - + Not allowed to upload this file because it is read-only on the server, restoring Sunucuda salt okunur olduğundan, bu dosya yüklenemedi, geri alınıyor - - + + Not allowed to remove, restoring Kaldırmaya izin verilmedi, geri alınıyor - + Local files and share folder removed. Yerel dosyalar ve paylaşım klasörü kaldırıldı. - + Move not allowed, item restored Taşımaya izin verilmedi, öge geri alındı - + Move not allowed because %1 is read-only %1 salt okunur olduğundan taşımaya izin verilmedi - + the destination hedef - + the source kaynak diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 2cae7cd52..fa124915e 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -2072,69 +2072,69 @@ Do you want to connect unencrypted instead (not recommended)? Файл містить недопустимі символи, через це синхронізація між платформами неможлива. - + Unable to initialize a sync journal. Не вдалося ініціалізувати протокол синхронізації. - + Cannot open the sync journal Не вдається відкрити протокол синхронізації - - + + Ignored because of the "choose what to sync" blacklist Ігнорується через чорний список в "обрати що синхронізувати" - + Not allowed because you don't have permission to add sub-directories in that directory Не дозволено через відсутність прав на додавання підкаталогів в цій теці. - + Not allowed because you don't have permission to add parent directory Не дозволено через відсутність прав на додавання батьківської теки. - + Not allowed because you don't have permission to add files in that directory Не дозволено через відсутність прав на додавання файлів в цю теку. - + Not allowed to upload this file because it is read-only on the server, restoring Не дозволено завантажувати цей файл, оскільки він має дозвіл лише на перегляд, відновлюємо - - + + Not allowed to remove, restoring Не дозволено видаляти, відновлюємо - + Local files and share folder removed. Локальні файли та теки в загальному доступі було видалено. - + Move not allowed, item restored Переміщення не дозволено, елемент відновлено - + Move not allowed because %1 is read-only Переміщення не дозволено, оскільки %1 помічений тільки для перегляду - + the destination призначення - + the source джерело diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index f8c5b0293..a2e26f6b4 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -2059,69 +2059,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. 无法初始化同步日志 - + Cannot open the sync journal 无法打开同步日志 - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 4aa679a19..4c9cbeb4a 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -2053,69 +2053,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source From 02e96484a8ecba7ba772a75432e35cc457444232 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Mon, 27 Oct 2014 12:25:48 -0400 Subject: [PATCH 28/87] Install shortcuts for all users --- cmake/modules/NSIS.template.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmake/modules/NSIS.template.in b/cmake/modules/NSIS.template.in index 77d396ca8..16ef69c51 100644 --- a/cmake/modules/NSIS.template.in +++ b/cmake/modules/NSIS.template.in @@ -508,7 +508,9 @@ SectionGroup $SectionGroup_Shortcuts SetDetailsPrint textonly DetailPrint $OPTION_SECTION_SC_DESKTOP_DetailPrint SetDetailsPrint listonly + SetShellVarContext all CreateShortCut "$DESKTOP\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}" + SetShellVarContext current ${MementoSectionEnd} !endif @@ -517,8 +519,10 @@ SectionGroup $SectionGroup_Shortcuts SectionIn 1 2 SetDetailsPrint textonly DetailPrint $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint + SetShellVarContext all SetDetailsPrint listonly CreateShortCut "$QUICKLAUNCH\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}" + SetShellVarContext current ${MementoSectionEnd} !endif From 1e94161ec1d4b6014f817f28b01ad1429cc311ce Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Sat, 15 Nov 2014 21:04:33 +0100 Subject: [PATCH 29/87] Revert "Install shortcuts for all users" --- cmake/modules/NSIS.template.in | 4 ---- 1 file changed, 4 deletions(-) diff --git a/cmake/modules/NSIS.template.in b/cmake/modules/NSIS.template.in index 16ef69c51..77d396ca8 100644 --- a/cmake/modules/NSIS.template.in +++ b/cmake/modules/NSIS.template.in @@ -508,9 +508,7 @@ SectionGroup $SectionGroup_Shortcuts SetDetailsPrint textonly DetailPrint $OPTION_SECTION_SC_DESKTOP_DetailPrint SetDetailsPrint listonly - SetShellVarContext all CreateShortCut "$DESKTOP\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}" - SetShellVarContext current ${MementoSectionEnd} !endif @@ -519,10 +517,8 @@ SectionGroup $SectionGroup_Shortcuts SectionIn 1 2 SetDetailsPrint textonly DetailPrint $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint - SetShellVarContext all SetDetailsPrint listonly CreateShortCut "$QUICKLAUNCH\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}" - SetShellVarContext current ${MementoSectionEnd} !endif From 629d46ca25b4d6759200f430b830e36863686f78 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sun, 16 Nov 2014 01:25:22 -0500 Subject: [PATCH 30/87] [tx-robot] updated from transifex --- translations/mirall_pt.ts | 38 +++++++++++++++++++++----------------- translations/mirall_tr.ts | 6 +++++- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index efeae5811..019c30cef 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -19,7 +19,7 @@ &Directory alias name: - Nome do &directorio: + Nome da &diretoria: @@ -116,7 +116,7 @@ Retrieving usage information... - A obter estatísticas de utilização... + A obter estatísticas da utilização ... @@ -278,7 +278,7 @@ Tempo total restante %5 timeout - tempo limite + tempo expirado @@ -335,18 +335,18 @@ Tempo total restante %5 %1 has been downloaded. %1 names a file. - Fez o download de %1 + %1 foi transferido. %1 and %2 other files have been updated. - Os ficheiros %1 e %2 foram actualizados. + %1 e %2 outros ficheiros foram atualizados. %1 has been updated. %1 names a file. - %1 foi actualizado. + %1 foi atualizado. @@ -434,22 +434,22 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Waits to start syncing. - A aguardar o inicio da sincronização. + A aguardar para iniciar a sincronização. Preparing for sync. - A preparar para sincronização. + A preparar para sincronizar. Sync is running. - A sincronização está a correr. + A sincronização está em execução. Last Sync was successful. - A última sincronização foi efectuada com sucesso. + A última sincronização foi efetuada com sucesso. @@ -469,12 +469,12 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Sync is paused. - A sincronização está em pausa. + A sincronização está pausada. %1 (Sync is paused) - %1 (Sincronização em pausa) + %1 (A sincronização está pausada) @@ -488,12 +488,12 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Syncing all files in your account with - A sincronizar todos os ficheiros sua conta com + A sincronizar todos os ficheiros na sua conta com Remote path: %1 - Pasta remota: %1 + Caminho remoto: %1 @@ -502,7 +502,7 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Add Folder - Acrescentar pasta + Adicionar Pasta @@ -510,7 +510,7 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Click to select a local folder to sync. - Escolha a pasta local a sincronizar. + Clique para selecionar a pasta local para sincronizar. @@ -1115,7 +1115,11 @@ It is not advisable to use it. %1 Do you want to connect unencrypted instead (not recommended)? - + Não foi possível ligar com segurança: + +%1 + +Em vez disso deseja utilizar uma ligação não codificada (não recomendado)? diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index cdb7e46b0..b281002e4 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -1118,7 +1118,11 @@ Kullanmanız önerilmez. %1 Do you want to connect unencrypted instead (not recommended)? - + Güvenli olarak bağlanılamadı: + +%1 + +Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)? From 39e97779ec1136fc93379f049248b6894ee27a87 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Mon, 17 Nov 2014 01:25:22 -0500 Subject: [PATCH 31/87] [tx-robot] updated from transifex --- translations/mirall_ru.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 043e124a7..024069fbf 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -1561,7 +1561,7 @@ Do you want to connect unencrypted instead (not recommended)? Try to sync these again. - + Попробуйте синхронизировать позже From 0b275c49334aa6f00826fe38d21a8c5c26ef088a Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 17 Nov 2014 11:11:13 +0100 Subject: [PATCH 32/87] Revert "WiP: switch to ReadDirectoryChangesW" --- src/mirall/folderwatcher_win.cpp | 83 ++++++++++---------------------- 1 file changed, 26 insertions(+), 57 deletions(-) diff --git a/src/mirall/folderwatcher_win.cpp b/src/mirall/folderwatcher_win.cpp index 76f687709..c6c8242fa 100644 --- a/src/mirall/folderwatcher_win.cpp +++ b/src/mirall/folderwatcher_win.cpp @@ -25,73 +25,42 @@ namespace Mirall { void WatcherThread::run() { - _handle = CreateFileW( - (wchar_t*)_path.utf16(), - FILE_LIST_DIRECTORY, - FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE, - NULL, - OPEN_EXISTING, - FILE_FLAG_BACKUP_SEMANTICS, - NULL - ); + _handle = FindFirstChangeNotification((wchar_t*)_path.utf16(), + true, // recursive watch + FILE_NOTIFY_CHANGE_FILE_NAME | + FILE_NOTIFY_CHANGE_DIR_NAME | + FILE_NOTIFY_CHANGE_LAST_WRITE); if (_handle == INVALID_HANDLE_VALUE) { - qDebug() << Q_FUNC_INFO << "Failed to set up a watch for" << _path << ", stopping watcher!"; + qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification function failed, stopping watcher!"; + FindCloseChangeNotification(_handle); + _handle = 0; + return; + } + + if (_handle == NULL) + { + qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned null, stopping watcher!"; FindCloseChangeNotification(_handle); _handle = 0; return; } - size_t bufsize = 4096; - size_t maxlen = 4096; while(true) { - char fileNotify[bufsize]; - FILE_NOTIFY_INFORMATION *pFileNotify = - (FILE_NOTIFY_INFORMATION*)fileNotify; - DWORD dwBytesReturned = 0; - SecureZeroMemory(pFileNotify, bufsize); - if(ReadDirectoryChangesW( _handle, (LPVOID)pFileNotify, - bufsize, true, - FILE_NOTIFY_CHANGE_FILE_NAME | - FILE_NOTIFY_CHANGE_DIR_NAME | - FILE_NOTIFY_CHANGE_LAST_WRITE, - &dwBytesReturned, NULL, NULL)) - { - FILE_NOTIFY_INFORMATION *curEntry = pFileNotify; - while(true) { - size_t len = pFileNotify->FileNameLength / 2; - QString file = _path + "\\" + QString::fromWCharArray(pFileNotify->FileName, len); - - QString longfile; - QScopedArrayPointer buffer(new TCHAR[maxlen]); - if (GetLongPathNameW(reinterpret_cast(file.utf16()), buffer.data(), maxlen) == 0) { - qDebug() << Q_FUNC_INFO << "Error converting file name to full length, resorting to original name."; - longfile = file; - } else { - longfile = QString::fromUtf16(reinterpret_cast(buffer.data()), maxlen-1); - } - - qDebug() << Q_FUNC_INFO << "Found change in" << file; - emit changed(longfile); - if (curEntry->NextEntryOffset == 0) { - break; - } - curEntry = (FILE_NOTIFY_INFORMATION*) - (char*)curEntry + curEntry->NextEntryOffset; - } - } else { - switch(GetLastError()) { - case ERROR_NOTIFY_ENUM_DIR: - qDebug() << Q_FUNC_INFO << "Too many events for buffer, resizing"; - bufsize *= 2; - break; - default: - qDebug() << Q_FUNC_INFO << "General error while watching. Exiting."; - CloseHandle(_handle); - _handle = NULL; - break; + switch(WaitForSingleObject(_handle, /*wait*/ INFINITE)) { + case WAIT_OBJECT_0: + if (FindNextChangeNotification(_handle) == false) { + qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned FALSE, stopping watcher!"; + FindCloseChangeNotification(_handle); + _handle = 0; + return; } + // qDebug() << Q_FUNC_INFO << "Change detected in" << _path << "from" << QThread::currentThread (); + emit changed(_path); + break; + default: + qDebug() << Q_FUNC_INFO << "Error while watching"; } } } From 7ada625161fbc9aff9ff6d78af1e47216e1a6bec Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Mon, 17 Nov 2014 17:48:29 +0100 Subject: [PATCH 33/87] OS X: Fix packages file --- OWNCLOUD.cmake | 9 +++++++++ admin/osx/macosx.pkgproj | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/OWNCLOUD.cmake b/OWNCLOUD.cmake index c17834c69..98ee75e0b 100644 --- a/OWNCLOUD.cmake +++ b/OWNCLOUD.cmake @@ -10,3 +10,12 @@ set( APPLICATION_REV_DOMAIN "com.owncloud.desktopclient" ) set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" ) # set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" ) # set( APPLICATION_LICENSE "${OEM_THEME_DIR}/license.txt ) + + +# please ignore the 5 lines below this +# need this logic to not mess with re/uninstallations via macosx.pkgproj +if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient") + set(APPLICATION_REV_DOMAIN_INSTALLER "com.ownCloud.client") +else() +set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN}) +endif() \ No newline at end of file diff --git a/admin/osx/macosx.pkgproj b/admin/osx/macosx.pkgproj index 460b9d87a..3da43c945 100644 --- a/admin/osx/macosx.pkgproj +++ b/admin/osx/macosx.pkgproj @@ -485,9 +485,9 @@ CONCLUSION_ACTION 0 IDENTIFIER - com.ownCloud.client + @APPLICATION_REV_DOMAIN_INSTALLER@ NAME - ownCloud Client + @APPLICATION_NAME@ OVERWRITE_PERMISSIONS VERSION From e890c4ae1be29057e7394b6bf498a4ae0347d513 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Mon, 17 Nov 2014 18:30:32 +0100 Subject: [PATCH 34/87] OS X: Move previous fix to proper location --- CMakeLists.txt | 7 +++++++ OWNCLOUD.cmake | 8 -------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 80fb6e601..b29b7d17f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,6 +14,13 @@ if ( EXISTS ${OEM_THEME_DIR}/OEM.cmake ) else () include ( ${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake ) endif() +# need this logic to not mess with re/uninstallations via macosx.pkgproj +if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient") + set(APPLICATION_REV_DOMAIN_INSTALLER "com.ownCloud.client") +else() + set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN}) +endif() + if (NOT DEFINED APPLICATION_SHORTNAME) set ( APPLICATION_SHORTNAME ${APPLICATION_NAME} ) diff --git a/OWNCLOUD.cmake b/OWNCLOUD.cmake index 98ee75e0b..d0ab1d66f 100644 --- a/OWNCLOUD.cmake +++ b/OWNCLOUD.cmake @@ -11,11 +11,3 @@ set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" ) # set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" ) # set( APPLICATION_LICENSE "${OEM_THEME_DIR}/license.txt ) - -# please ignore the 5 lines below this -# need this logic to not mess with re/uninstallations via macosx.pkgproj -if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient") - set(APPLICATION_REV_DOMAIN_INSTALLER "com.ownCloud.client") -else() -set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN}) -endif() \ No newline at end of file From 1113980b20ac51fb1b4e07cda71b75c242ed722d Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 18 Nov 2014 17:35:31 +0100 Subject: [PATCH 35/87] Propagator: Change the scheduler It still needs to be a bit optimized, but it allows to paralelized jobs between directories (this is required to paralelize the mkcol) --- src/libsync/owncloudpropagator.cpp | 117 ++++++++++++++++++++------ src/libsync/owncloudpropagator.h | 60 ++++++++----- src/libsync/propagatedownload.cpp | 1 - src/libsync/propagateremotedelete.cpp | 1 - src/libsync/propagateremotemkdir.cpp | 1 - src/libsync/propagateremotemove.cpp | 1 - src/libsync/propagateremotemove.h | 1 + src/libsync/propagateupload.cpp | 2 +- src/libsync/propagator_legacy.h | 2 + src/libsync/propagatorjobs.h | 1 + 10 files changed, 137 insertions(+), 50 deletions(-) diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index fedf39d56..11bd65db8 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -71,6 +71,7 @@ static bool blacklist(SyncJournalDb* journal, const SyncFileItem& item) void PropagateItemJob::done(SyncFileItem::Status status, const QString &errorString) { + _state = Finished; if (_item._isRestoration) { if( status == SyncFileItem::Success || status == SyncFileItem::Conflict) { status = SyncFileItem::Restoration; @@ -309,10 +310,11 @@ void OwncloudPropagator::start(const SyncFileItemVector& items) connect(_rootJob.data(), SIGNAL(completed(SyncFileItem)), this, SIGNAL(completed(SyncFileItem))); connect(_rootJob.data(), SIGNAL(progress(SyncFileItem,quint64)), this, SIGNAL(progress(SyncFileItem,quint64))); connect(_rootJob.data(), SIGNAL(finished(SyncFileItem::Status)), this, SLOT(emitFinished())); + connect(_rootJob.data(), SIGNAL(ready()), this, SLOT(scheduleNextJob()), Qt::QueuedConnection); qDebug() << (useLegacyJobs() ? "Using legacy libneon/HTTP sequential code path" : "Using QNAM/HTTP parallel code path"); - QMetaObject::invokeMethod(_rootJob.data(), "start", Qt::QueuedConnection); + QTimer::singleShot(0, this, SLOT(scheduleNextJob())); } bool OwncloudPropagator::isInSharedDirectory(const QString& file) @@ -446,23 +448,94 @@ QString OwncloudPropagator::getFilePath(const QString& tmp_file_name) const return _localDir + tmp_file_name; } +void OwncloudPropagator::scheduleNextJob() +{ + if (this->_activeJobs < maximumActiveJob()) { + if (_rootJob->scheduleNextJob()) { + QTimer::singleShot(100, this, SLOT(scheduleNextJob())); + } + } +} + + // ================================================================================ -void PropagateDirectory::start() +PropagatorJob::JobParallelism PropagateDirectory::parallelism() { - _current = -1; - _hasError = SyncFileItem::NoStatus; - if (!_firstJob) { - slotSubJobReady(); - } else { - startJob(_firstJob.data()); + // If any of the non-finished sub jobs is not parallel, we have to wait + + // FIXME! we should probably cache this result + + if (_firstJob && _firstJob->_state != Finished) { + if (_firstJob->parallelism() != FullParallelism) + return WaitForFinished; } + + // FIXME: use the cached value of finished job + for (int i = 0; i < _subJobs.count(); ++i) { + if (_subJobs.at(i)->_state != Finished && _subJobs.at(i)->parallelism() != FullParallelism) { + return WaitForFinished; + } + } + return FullParallelism; +} + + +bool PropagateDirectory::scheduleNextJob() +{ + if (_state == Finished) { + return false; + } + + if (_state == NotYetStarted) { + _state = Running; + + if (!_firstJob && _subJobs.isEmpty()) { + slotSubJobFinished(SyncFileItem::Success); + return true; + } + } + + if (_firstJob && _firstJob->_state == NotYetStarted) { + return possiblyRunNextJob(_firstJob.data()); + } + + if (_firstJob && _firstJob->_state == Running) { + return false; + } + + bool stopAtDirectory = false; + // FIXME: use the cached value of finished job + for (int i = 0; i < _subJobs.count(); ++i) { + if (_subJobs.at(i)->_state == Finished) { + continue; + } + + if (stopAtDirectory && qobject_cast(_subJobs.at(i))) { + return false; + } + + if (possiblyRunNextJob(_subJobs.at(i))) { + return true; + } + + Q_ASSERT(_subJobs.at(i)->_state == Running); + + auto paral = _subJobs.at(i)->parallelism(); + if (paral == WaitForFinished) { + return false; + } + if (paral == WaitForFinishedInParentDirectory) { + stopAtDirectory = true; + } + } + return false; } void PropagateDirectory::slotSubJobFinished(SyncFileItem::Status status) { if (status == SyncFileItem::FatalError || - (_current == -1 && status != SyncFileItem::Success && status != SyncFileItem::Restoration)) { + (sender() == _firstJob.data() && status != SyncFileItem::Success && status != SyncFileItem::Restoration)) { abort(); emit finished(status); return; @@ -470,28 +543,17 @@ void PropagateDirectory::slotSubJobFinished(SyncFileItem::Status status) _hasError = status; } _runningNow--; - slotSubJobReady(); -} -void PropagateDirectory::slotSubJobReady() -{ - if (_runningNow && _current == -1) - return; // Ignore the case when the _fistJob is ready and not yet finished - if (_runningNow && _current >= 0 && _current < _subJobs.count()) { - // there is a job running and the current one is not ready yet, we can't start new job - if (!_subJobs[_current]->_readySent || _propagator->_activeJobs >= _propagator->maximumActiveJob()) - return; + int total = _subJobs.count(); + if (!_firstJob) { + total--; } _current++; - if (_current < _subJobs.size() && !_propagator->_abortRequested.fetchAndAddRelaxed(0)) { - PropagatorJob *next = _subJobs.at(_current); - startJob(next); - return; - } + // We finished to processing all the jobs - emitReady(); - if (!_runningNow) { + // check if we finished + if (_current >= total) { if (!_item.isEmpty() && _hasError == SyncFileItem::NoStatus) { if( !_item._renameTarget.isEmpty() ) { _item._file = _item._renameTarget; @@ -508,7 +570,10 @@ void PropagateDirectory::slotSubJobReady() _propagator->_journal->setFileRecord(record); } } + _state = Finished; emit finished(_hasError == SyncFileItem::NoStatus ? SyncFileItem::Success : _hasError); + } else { + emit ready(); } } diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index 3d0df86d1..4e02bf427 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -45,19 +45,28 @@ class PropagatorJob : public QObject { Q_OBJECT protected: OwncloudPropagator *_propagator; - void emitReady() { - bool wasReady = _readySent; - _readySent = true; - if (!wasReady) - emit ready(); - }; + public: - bool _readySent; - explicit PropagatorJob(OwncloudPropagator* propagator) : _propagator(propagator), _readySent(false) {} + enum JobState { + NotYetStarted, + Running, + Finished + }; + + enum JobParallelism { + FullParallelism, + WaitForFinished, + WaitForFinishedInParentDirectory + }; + + JobState _state; + explicit PropagatorJob(OwncloudPropagator* propagator) : _propagator(propagator), _state(NotYetStarted) {} + public slots: - virtual void start() = 0; + virtual JobParallelism parallelism() { return FullParallelism; } virtual void abort() {} + virtual bool scheduleNextJob() = 0; signals: /** * Emitted when the job is fully finished @@ -111,7 +120,8 @@ public: _subJobs.append(subJob); } - virtual void start() Q_DECL_OVERRIDE; + virtual bool scheduleNextJob() Q_DECL_OVERRIDE; + virtual JobParallelism parallelism() Q_DECL_OVERRIDE; virtual void abort() Q_DECL_OVERRIDE { if (_firstJob) _firstJob->abort(); @@ -120,23 +130,23 @@ public: } private slots: - void startJob(PropagatorJob *next) { - connect(next, SIGNAL(finished(SyncFileItem::Status)), this, SLOT(slotSubJobFinished(SyncFileItem::Status)), Qt::QueuedConnection); - connect(next, SIGNAL(completed(SyncFileItem)), this, SIGNAL(completed(SyncFileItem))); - connect(next, SIGNAL(progress(SyncFileItem,quint64)), this, SIGNAL(progress(SyncFileItem,quint64))); - connect(next, SIGNAL(ready()), this, SLOT(slotSubJobReady())); - _runningNow++; - QMetaObject::invokeMethod(next, "start", Qt::QueuedConnection); + bool possiblyRunNextJob(PropagatorJob *next) { + if (next->_state == NotYetStarted) { + connect(next, SIGNAL(finished(SyncFileItem::Status)), this, SLOT(slotSubJobFinished(SyncFileItem::Status)), Qt::QueuedConnection); + connect(next, SIGNAL(completed(SyncFileItem)), this, SIGNAL(completed(SyncFileItem))); + connect(next, SIGNAL(progress(SyncFileItem,quint64)), this, SIGNAL(progress(SyncFileItem,quint64))); + connect(next, SIGNAL(ready()), this, SIGNAL(ready())); + _runningNow++; + } + return next->scheduleNextJob(); } void slotSubJobFinished(SyncFileItem::Status status); - void slotSubJobReady(); }; /* * Abstract class to propagate a single item - * (Only used for neon job) */ class PropagateItemJob : public PropagatorJob { Q_OBJECT @@ -169,6 +179,16 @@ public: PropagateItemJob(OwncloudPropagator* propagator, const SyncFileItem &item) : PropagatorJob(propagator), _item(item) {} + bool scheduleNextJob() Q_DECL_OVERRIDE { + if (_state != NotYetStarted) { + return false; + } + _state = Running; + start(); + return true; + } + virtual void start() = 0; + }; // Dummy job that just mark it as completed and ignored. @@ -260,6 +280,8 @@ private slots: _finishedEmited = true; } + void scheduleNextJob(); + signals: void completed(const SyncFileItem &); void progress(const SyncFileItem&, quint64 bytes); diff --git a/src/libsync/propagatedownload.cpp b/src/libsync/propagatedownload.cpp index 32cb3a41e..747fc1142 100644 --- a/src/libsync/propagatedownload.cpp +++ b/src/libsync/propagatedownload.cpp @@ -361,7 +361,6 @@ void PropagateDownloadFileQNAM::start() connect(_job, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(slotDownloadProgress(qint64,qint64))); _propagator->_activeJobs ++; _job->start(); - emitReady(); } void PropagateDownloadFileQNAM::slotGetFinished() diff --git a/src/libsync/propagateremotedelete.cpp b/src/libsync/propagateremotedelete.cpp index 654328bc1..503daf307 100644 --- a/src/libsync/propagateremotedelete.cpp +++ b/src/libsync/propagateremotedelete.cpp @@ -60,7 +60,6 @@ void PropagateRemoteDelete::start() connect(_job, SIGNAL(finishedSignal()), this, SLOT(slotDeleteJobFinished())); _propagator->_activeJobs ++; _job->start(); - emitReady(); } void PropagateRemoteDelete::abort() diff --git a/src/libsync/propagateremotemkdir.cpp b/src/libsync/propagateremotemkdir.cpp index 38a7c49bb..ce51a054f 100644 --- a/src/libsync/propagateremotemkdir.cpp +++ b/src/libsync/propagateremotemkdir.cpp @@ -33,7 +33,6 @@ void PropagateRemoteMkdir::start() connect(_job, SIGNAL(finished(QNetworkReply::NetworkError)), this, SLOT(slotMkcolJobFinished())); _propagator->_activeJobs++; _job->start(); - emitReady(); } void PropagateRemoteMkdir::abort() diff --git a/src/libsync/propagateremotemove.cpp b/src/libsync/propagateremotemove.cpp index 06084cb02..aa2372274 100644 --- a/src/libsync/propagateremotemove.cpp +++ b/src/libsync/propagateremotemove.cpp @@ -78,7 +78,6 @@ void PropagateRemoteMove::start() connect(_job, SIGNAL(finishedSignal()), this, SLOT(slotMoveJobFinished())); _propagator->_activeJobs++; _job->start(); - emitReady(); } } diff --git a/src/libsync/propagateremotemove.h b/src/libsync/propagateremotemove.h index 97cf5c0f0..540fff9f6 100644 --- a/src/libsync/propagateremotemove.h +++ b/src/libsync/propagateremotemove.h @@ -43,6 +43,7 @@ public: : PropagateItemJob(propagator, item) {} void start() Q_DECL_OVERRIDE; void abort() Q_DECL_OVERRIDE; + JobParallelism parallelism() Q_DECL_OVERRIDE { return Mirall::PropagatorJob::WaitForFinishedInParentDirectory; } private slots: void slotMoveJobFinished(); void finalize(); diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index 079ebcf60..5f58835f5 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -404,7 +404,7 @@ void PropagateUploadFileQNAM::startNextChunk() startNextChunk(); } if (!parallelChunkUpload || _chunkCount - _currentChunk <= 0) { - emitReady(); + emit ready(); } } else { qDebug() << "ERR: Could not open upload file: " << device->errorString(); diff --git a/src/libsync/propagator_legacy.h b/src/libsync/propagator_legacy.h index f64aef0db..03a15a296 100644 --- a/src/libsync/propagator_legacy.h +++ b/src/libsync/propagator_legacy.h @@ -72,6 +72,8 @@ public: : PropagateItemJob(propagator, item), _lastProgress(0), _httpStatusCode(0) { moveToThread(propagator->_neonThread); } + + JobParallelism parallelism() Q_DECL_OVERRIDE { return WaitForFinished; } }; class UpdateMTimeAndETagJob : public PropagateNeonJob { diff --git a/src/libsync/propagatorjobs.h b/src/libsync/propagatorjobs.h index 57218b675..828c3db17 100644 --- a/src/libsync/propagatorjobs.h +++ b/src/libsync/propagatorjobs.h @@ -40,6 +40,7 @@ class PropagateLocalRename : public PropagateItemJob { public: PropagateLocalRename (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item) {} void start() Q_DECL_OVERRIDE; + JobParallelism parallelism() Q_DECL_OVERRIDE { return WaitForFinishedInParentDirectory; } }; From 9a6710e3307234d1550e69cc25a9e49cf61e77cd Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 18 Nov 2014 17:54:53 +0100 Subject: [PATCH 36/87] Propagator: add a bit of documentation comments --- src/libsync/owncloudpropagator.h | 34 +++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index 4e02bf427..55bdc9d4d 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -41,31 +41,52 @@ class Account; class SyncJournalDb; class OwncloudPropagator; +/** + * @class PropagatorJob + * @brief the base class of propagator jobs + * + * This can either be a job, or a container for jobs. + * If it is a composite jobs, it then inherits from PropagateDirectory + * + * + */ + class PropagatorJob : public QObject { Q_OBJECT protected: OwncloudPropagator *_propagator; public: + explicit PropagatorJob(OwncloudPropagator* propagator) : _propagator(propagator), _state(NotYetStarted) {} + enum JobState { NotYetStarted, Running, Finished }; + JobState _state; enum JobParallelism { + + /** Jobs can be run in parallel to this job */ FullParallelism, + /** This job do not support parallelism, and no other job shall + be started until this one has finished */ WaitForFinished, + + /** This job support paralelism with other jobs in the same directory, but it should + not be paralelized with jobs in other directories (typically a move operation) */ WaitForFinishedInParentDirectory }; - JobState _state; - explicit PropagatorJob(OwncloudPropagator* propagator) : _propagator(propagator), _state(NotYetStarted) {} - + virtual JobParallelism parallelism() { return FullParallelism; } public slots: - virtual JobParallelism parallelism() { return FullParallelism; } virtual void abort() {} + + /** Starts this job, or a new subjob + * returns true if a job was started. + */ virtual bool scheduleNextJob() = 0; signals: /** @@ -79,9 +100,8 @@ signals: void completed(const SyncFileItem &); /** - * Emitted when all the sub-jobs have been scheduled and - * we are ready and more jobs might be started - * This signal is not always emitted. + * Emitted when all the sub-jobs have been finished and + * more jobs might be started (so scheduleNextJob can/must be called again) */ void ready(); From 3706c7662260da9af5ca8e54b218aea15522bc14 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Wed, 19 Nov 2014 10:31:42 +0100 Subject: [PATCH 37/87] useLegacyJobs: Fix logic. --- src/libsync/owncloudpropagator.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index 11bd65db8..c97242244 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -350,26 +350,26 @@ bool OwncloudPropagator::useLegacyJobs() // QNAM bandwith limiting only work with version of Qt greater or equal to 5.3.3 // (It needs Qt commits 097b641 and b99fa32) #if QT_VERSION >= QT_VERSION_CHECK(5,3,3) - return true; + return false; #elif QT_VERSION >= QT_VERSION_CHECK(5,0,0) env = qgetenv("OWNCLOUD_NEW_BANDWIDTH_LIMITING"); if (env=="true" || env =="1") { qDebug() << "New Bandwidth Limiting Code ACTIVATED"; - return true; + return false; } // Do a runtime check. // (Poor man's version comparison) const char *v = qVersion(); // "x.y.z"; if (QLatin1String(v) >= QLatin1String("5.3.3")) { - return true; + return false; } else { qDebug() << "Use legacy jobs because qt version is only" << v << "while 5.3.3 is needed"; - return false; + return true; } #else qDebug() << "Use legacy jobs because of Qt4"; - return false; + return true; #endif } From 3a448fda911b1ab17221a8dfd63e00da23746252 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Wed, 19 Nov 2014 12:46:19 +0100 Subject: [PATCH 38/87] Windows mingw32: Fix finding of windres binary. --- cmake/modules/AddAppIconMacro.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/modules/AddAppIconMacro.cmake b/cmake/modules/AddAppIconMacro.cmake index 9a223e0ea..3106b1bfa 100644 --- a/cmake/modules/AddAppIconMacro.cmake +++ b/cmake/modules/AddAppIconMacro.cmake @@ -1,4 +1,4 @@ -SET(WINDRES_EXECUTABLE ${CMAKE_RC_COMPILER}) +SET(WINDRES_EXECUTABLE_BASE ${CMAKE_RC_COMPILER}) # This macro is taken from kdelibs/cmake/modules/KDE4Macros.cmake. # @@ -21,7 +21,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) else(NOT WINCE) find_program(PNG2ICO_EXECUTABLE NAMES png2ico PATHS ${HOST_BINDIR} NO_DEFAULT_PATH ) endif(NOT WINCE) - find_program(WINDRES_EXECUTABLE NAMES windres) + find_program(WINDRES_EXECUTABLE NAMES ${WINDRES_EXECUTABLE_BASE}) if(MSVC) set(WINDRES_EXECUTABLE TRUE) endif(MSVC) From 421a8cc6b796f69e36cfc46d86e730676737f9a9 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Wed, 19 Nov 2014 14:14:54 +0100 Subject: [PATCH 39/87] Windows: Make unit tests compile. --- src/mirall/syncjournaldb.h | 10 ++++++---- src/mirall/syncjournalfilerecord.h | 5 +++-- test/CMakeLists.txt | 4 ++-- test/testfolderwatcher.h | 2 +- 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/mirall/syncjournaldb.h b/src/mirall/syncjournaldb.h index 2dc3f6ac4..3d723437a 100644 --- a/src/mirall/syncjournaldb.h +++ b/src/mirall/syncjournaldb.h @@ -143,10 +143,12 @@ private: QList _avoidReadFromDbOnNextSyncFilter; }; -bool operator==(const SyncJournalDb::DownloadInfo & lhs, - const SyncJournalDb::DownloadInfo & rhs); -bool operator==(const SyncJournalDb::UploadInfo & lhs, - const SyncJournalDb::UploadInfo & rhs); +bool OWNCLOUDSYNC_EXPORT +operator==(const SyncJournalDb::DownloadInfo & lhs, + const SyncJournalDb::DownloadInfo & rhs); +bool OWNCLOUDSYNC_EXPORT +operator==(const SyncJournalDb::UploadInfo & lhs, + const SyncJournalDb::UploadInfo & rhs); } // namespace Mirall #endif // SYNCJOURNALDB_H diff --git a/src/mirall/syncjournalfilerecord.h b/src/mirall/syncjournalfilerecord.h index 87d5b268a..9968ba4ef 100644 --- a/src/mirall/syncjournalfilerecord.h +++ b/src/mirall/syncjournalfilerecord.h @@ -43,8 +43,9 @@ public: int _mode; }; -bool operator==(const SyncJournalFileRecord & lhs, - const SyncJournalFileRecord & rhs); +bool OWNCLOUDSYNC_EXPORT +operator==(const SyncJournalFileRecord & lhs, + const SyncJournalFileRecord & rhs); class SyncJournalBlacklistRecord { diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 0868c2b27..fe0c62b0a 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -27,8 +27,8 @@ endif(UNIX AND NOT APPLE) owncloud_add_test(CSyncSqlite "") owncloud_add_test(NetrcParser ../src/owncloudcmd/netrcparser.cpp) -owncloud_add_test(OwnSql ../src/mirall/ownsql.cpp) -owncloud_add_test(SyncJournalDB ../src/mirall/syncjournaldb.cpp) +owncloud_add_test(OwnSql "") +owncloud_add_test(SyncJournalDB "") diff --git a/test/testfolderwatcher.h b/test/testfolderwatcher.h index f7a0dd6ca..061a629ab 100644 --- a/test/testfolderwatcher.h +++ b/test/testfolderwatcher.h @@ -10,7 +10,7 @@ #include -#include "mirall/folderwatcher_linux.h" +#include "mirall/folderwatcher.h" #include "mirall/utility.h" using namespace Mirall; From 06b31d7cf07710c7b2435d761cc70b2e8f5a2059 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Thu, 20 Nov 2014 01:25:20 -0500 Subject: [PATCH 40/87] [tx-robot] updated from transifex --- translations/mirall_fr.ts | 16 ++++++++-------- translations/mirall_tr.ts | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index b615b7ce3..0ddb52915 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -37,7 +37,7 @@ Add Folder - Ajouter le dossier + Ajouter un dossier @@ -503,7 +503,7 @@ Voulez-vous réellement effectuer cette opération ? Add Folder - Ajouter le dossier + Ajouter un dossier @@ -1031,7 +1031,7 @@ peut demander des privilèges additionnels durant le processus. Connect to %1 - Connecter à %1 + Connexion à %1 @@ -1074,7 +1074,7 @@ peut demander des privilèges additionnels durant le processus. Connect to %1 - Connecter à %1 + Connexion à %1 @@ -1084,7 +1084,7 @@ peut demander des privilèges additionnels durant le processus. Update user credentials - Mettre à jour les identifiants de connexion de l'utilisateur + Modification des identifiants de connexion @@ -1092,7 +1092,7 @@ peut demander des privilèges additionnels durant le processus. Connect to %1 - Connecter à %1 + Connexion à %1 @@ -1132,7 +1132,7 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? Update %1 server - Mettre à jour le serveur %1 + Modification de l'adresse du serveur %1 @@ -2323,7 +2323,7 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? Sync everything from server - Synchroniser tout le contenu du serveur + Synchroniser tout le contenu de votre compte diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index b281002e4..1fcf3ab31 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -435,7 +435,7 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Waits to start syncing. - Eşitleme başlatmak için bekleniyor. + Eşitleme başlatmak için bekliyor. From 9dc57359b9e74ed6d8f74d17a72e00c73a67ce49 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Thu, 20 Nov 2014 12:30:04 +0100 Subject: [PATCH 41/87] csync db files: Hide after some commit/transactions. #2461 The shm and wal files are only created later. --- src/mirall/syncjournaldb.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mirall/syncjournaldb.cpp b/src/mirall/syncjournaldb.cpp index fca1c9e56..579bf575e 100644 --- a/src/mirall/syncjournaldb.cpp +++ b/src/mirall/syncjournaldb.cpp @@ -158,11 +158,6 @@ bool SyncJournalDb::checkConnect() return sqlFail("Set PRAGMA case_sensitivity", pragma1); } - // Hide 'em all! - FileSystem::setFileHidden(databaseFilePath(), true); - FileSystem::setFileHidden(databaseFilePath() + "-wal", true); - FileSystem::setFileHidden(databaseFilePath() + "-shm", true); - /* Because insert are so slow, e do everything in a transaction, and one need to call commit */ startTransaction(); @@ -335,6 +330,11 @@ bool SyncJournalDb::checkConnect() // don't start a new transaction now commitInternal(QString("checkConnect End"), false); + // Hide 'em all! + FileSystem::setFileHidden(databaseFilePath(), true); + FileSystem::setFileHidden(databaseFilePath() + "-wal", true); + FileSystem::setFileHidden(databaseFilePath() + "-shm", true); + return rc; } From d4e0941c2732508b2d944f19115c2c76c7eb593b Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Thu, 6 Nov 2014 00:36:04 +0100 Subject: [PATCH 42/87] Windows filewatcher: switch to ReadDirectoryChangesW. Based on danimo's #2454 fix for #2455 and related to #2297. --- src/mirall/folderwatcher_win.cpp | 132 ++++++++++++++++++++++++------- src/mirall/folderwatcher_win.h | 2 + test/testfolderwatcher.h | 96 ++++++++++++++++------ 3 files changed, 174 insertions(+), 56 deletions(-) diff --git a/src/mirall/folderwatcher_win.cpp b/src/mirall/folderwatcher_win.cpp index c6c8242fa..ced1c2d23 100644 --- a/src/mirall/folderwatcher_win.cpp +++ b/src/mirall/folderwatcher_win.cpp @@ -13,6 +13,7 @@ #include #include +#include #include "mirall/folderwatcher.h" #include "mirall/folderwatcher_win.h" @@ -23,52 +24,123 @@ namespace Mirall { -void WatcherThread::run() +void WatcherThread::watchChanges(size_t fileNotifyBufferSize, + bool* increaseBufferSize) { - _handle = FindFirstChangeNotification((wchar_t*)_path.utf16(), - true, // recursive watch - FILE_NOTIFY_CHANGE_FILE_NAME | - FILE_NOTIFY_CHANGE_DIR_NAME | - FILE_NOTIFY_CHANGE_LAST_WRITE); + *increaseBufferSize = false; + + _handle = CreateFileW( + (wchar_t*)_path.utf16(), + FILE_LIST_DIRECTORY, + FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE, + NULL, + OPEN_EXISTING, + FILE_FLAG_BACKUP_SEMANTICS, + NULL + ); if (_handle == INVALID_HANDLE_VALUE) { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification function failed, stopping watcher!"; - FindCloseChangeNotification(_handle); + DWORD errorCode = GetLastError(); + qDebug() << Q_FUNC_INFO << "Failed to create handle for" << _path << ", error:" << errorCode; _handle = 0; return; } - if (_handle == NULL) - { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned null, stopping watcher!"; - FindCloseChangeNotification(_handle); - _handle = 0; - return; - } + // QVarLengthArray ensures the stack-buffer is aligned like double and qint64. + QVarLengthArray fileNotifyBuffer; + fileNotifyBuffer.resize(fileNotifyBufferSize); - while(true) { - switch(WaitForSingleObject(_handle, /*wait*/ INFINITE)) { - case WAIT_OBJECT_0: - if (FindNextChangeNotification(_handle) == false) { - qDebug() << Q_FUNC_INFO << "FindFirstChangeNotification returned FALSE, stopping watcher!"; - FindCloseChangeNotification(_handle); - _handle = 0; - return; + const size_t fileNameBufferSize = 4096; + TCHAR fileNameBuffer[fileNameBufferSize]; + + forever { + FILE_NOTIFY_INFORMATION *pFileNotifyBuffer = + (FILE_NOTIFY_INFORMATION*)fileNotifyBuffer.data(); + DWORD dwBytesReturned = 0; + SecureZeroMemory(pFileNotifyBuffer, fileNotifyBufferSize); + if(ReadDirectoryChangesW( _handle, (LPVOID)pFileNotifyBuffer, + fileNotifyBufferSize, true, + FILE_NOTIFY_CHANGE_FILE_NAME | + FILE_NOTIFY_CHANGE_DIR_NAME | + FILE_NOTIFY_CHANGE_LAST_WRITE, + &dwBytesReturned, NULL, NULL)) + { + FILE_NOTIFY_INFORMATION *curEntry = pFileNotifyBuffer; + forever { + size_t len = curEntry->FileNameLength / 2; + QString file = _path + "\\" + QString::fromWCharArray(curEntry->FileName, len); + + // Unless the file was removed or renamed, get its full long name + // TODO: We could still try expanding the path in the tricky cases... + QString longfile = file; + if (curEntry->Action != FILE_ACTION_REMOVED + && curEntry->Action != FILE_ACTION_RENAMED_OLD_NAME) { + size_t longNameSize = GetLongPathNameW(reinterpret_cast(file.utf16()), fileNameBuffer, fileNameBufferSize); + if (longNameSize > 0) { + longfile = QString::fromUtf16(reinterpret_cast(fileNameBuffer), longNameSize); + } else { + qDebug() << Q_FUNC_INFO << "Error converting file name to full length, keeping original name."; + } + } + longfile = QDir::cleanPath(longfile); + + qDebug() << Q_FUNC_INFO << "Found change in" << longfile << "action:" << curEntry->Action; + emit changed(longfile); + + if (curEntry->NextEntryOffset == 0) { + break; + } + curEntry = (FILE_NOTIFY_INFORMATION*)( + (char*)curEntry + curEntry->NextEntryOffset); } - // qDebug() << Q_FUNC_INFO << "Change detected in" << _path << "from" << QThread::currentThread (); - emit changed(_path); - break; - default: - qDebug() << Q_FUNC_INFO << "Error while watching"; + } else { + DWORD errorCode = GetLastError(); + switch(errorCode) { + case ERROR_NOTIFY_ENUM_DIR: + qDebug() << Q_FUNC_INFO << "The buffer for changes overflowed! Triggering a generic change and resizing"; + emit changed(_path); + *increaseBufferSize = true; + break; + default: + qDebug() << Q_FUNC_INFO << "General error" << errorCode << "while watching. Exiting."; + break; + } + CloseHandle(_handle); + _handle = NULL; + return; + } + } +} + +void WatcherThread::run() +{ + // If this buffer fills up before we've extracted its data we will lose + // change information. Therefore start big. + size_t bufferSize = 4096*10; + size_t maxBuffer = 64*1024; + + forever { + bool increaseBufferSize = false; + watchChanges(bufferSize, &increaseBufferSize); + + if (increaseBufferSize) { + bufferSize = qMin(bufferSize*2, maxBuffer); + } else { + // Other errors shouldn't actually happen, + // so sleep a bit to avoid running into the same error case in a + // tight loop. + sleep(2); } } } WatcherThread::~WatcherThread() { - if (_handle) - FindCloseChangeNotification(_handle); + if (_handle) { + CloseHandle(_handle); + _handle = NULL; + } } FolderWatcherPrivate::FolderWatcherPrivate(FolderWatcher *p, const QString& path) diff --git a/src/mirall/folderwatcher_win.h b/src/mirall/folderwatcher_win.h index 56ddfccd0..465477fd9 100644 --- a/src/mirall/folderwatcher_win.h +++ b/src/mirall/folderwatcher_win.h @@ -33,6 +33,8 @@ public: protected: void run(); + void watchChanges(size_t fileNotifyBufferSize, + bool* increaseBufferSize); signals: void changed(const QString &path); diff --git a/test/testfolderwatcher.h b/test/testfolderwatcher.h index 061a629ab..cc0584673 100644 --- a/test/testfolderwatcher.h +++ b/test/testfolderwatcher.h @@ -15,15 +15,23 @@ using namespace Mirall; +class FriendlyThread : public QThread +{ + friend class TestFolderWatcher; +}; + class TestFolderWatcher : public QObject { Q_OBJECT public slots: void slotFolderChanged( const QString& path ) { - qDebug() << "COMPARE: " << path << _checkMark; - QVERIFY(_checkMark == path); - _checkMark.clear(); + if (_skipNotifications.contains(path)) { + return; + } + if (_requiredNotifications.contains(path)) { + _receivedNotifications.insert(path); + } } void slotEnd() { // in case something goes wrong... @@ -36,7 +44,16 @@ private: FolderWatcher *_watcher; QEventLoop _loop; QTimer _timer; - QString _checkMark; + QSet _requiredNotifications; + QSet _receivedNotifications; + QSet _skipNotifications; + + void processAndWait() + { + _loop.processEvents(); + FriendlyThread::msleep(200); + _loop.processEvents(); + } private slots: void initTestCase() { @@ -52,68 +69,95 @@ private slots: rootDir.mkpath(_root + "/a2/b3/c3"); Utility::writeRandomFile( _root+"/a1/random.bin"); Utility::writeRandomFile( _root+"/a1/b2/todelete.bin"); - Utility::writeRandomFile( _root+"/a2/movefile"); + Utility::writeRandomFile( _root+"/a2/renamefile"); + Utility::writeRandomFile( _root+"/a1/movefile"); _watcher = new FolderWatcher(_root); QObject::connect(_watcher, SIGNAL(folderChanged(QString)), this, SLOT(slotFolderChanged(QString))); - _timer.singleShot(3000, this, SLOT(slotEnd())); + _timer.singleShot(5000, this, SLOT(slotEnd())); + } + + void init() + { + _receivedNotifications.clear(); + _requiredNotifications.clear(); + _skipNotifications.clear(); + } + + void checkNotifications() + { + processAndWait(); + QCOMPARE(_receivedNotifications, _requiredNotifications); } void testACreate() { // create a new file QString cmd; - _checkMark = _root; + _requiredNotifications.insert(_root); cmd = QString("echo \"xyz\" > %1/foo.txt").arg(_root); qDebug() << "Command: " << cmd; system(cmd.toLocal8Bit()); - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + checkNotifications(); } void testATouch() { // touch an existing file. + _requiredNotifications.insert(_root+"/a1"); +#ifdef Q_OS_WIN + Utility::writeRandomFile(QString("%1/a1/random.bin").arg(_root)); +#else QString cmd; cmd = QString("/usr/bin/touch %1/a1/random.bin").arg(_root); - _checkMark = _root+"/a1"; qDebug() << "Command: " << cmd; system(cmd.toLocal8Bit()); +#endif - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + checkNotifications(); } void testCreateADir() { - _checkMark = _root+"/a1/b1"; + _requiredNotifications.insert(_root+"/a1/b1"); + _skipNotifications.insert(_root + "/a1/b1/new_dir"); QDir dir; dir.mkdir( _root + "/a1/b1/new_dir"); QVERIFY(QFile::exists(_root + "/a1/b1/new_dir")); - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + + checkNotifications(); } void testRemoveADir() { - _checkMark = _root+"/a1/b3"; + _requiredNotifications.insert(_root+"/a1/b3"); QDir dir; QVERIFY(dir.rmdir(_root+"/a1/b3/c3")); - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + + checkNotifications(); } void testRemoveAFile() { - _checkMark = _root+"/a1/b2"; + _requiredNotifications.insert(_root+"/a1/b2"); QVERIFY(QFile::exists(_root+"/a1/b2/todelete.bin")); QFile::remove(_root+"/a1/b2/todelete.bin"); QVERIFY(!QFile::exists(_root+"/a1/b2/todelete.bin")); - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + + checkNotifications(); + } + + void testRenameAFile() { + _requiredNotifications.insert(_root+"/a2"); + QVERIFY(QFile::exists(_root+"/a2/renamefile")); + QFile::rename(_root+"/a2/renamefile", _root+"/a2/renamefile.renamed" ); + QVERIFY(QFile::exists(_root+"/a2/renamefile.renamed")); + + checkNotifications(); } void testMoveAFile() { - _checkMark = _root+"/a2"; - QVERIFY(QFile::exists(_root+"/a2/movefile")); - QFile::rename(_root+"/a2/movefile", _root+"/a2/movefile.renamed" ); + _requiredNotifications.insert(_root+"/a1"); + _requiredNotifications.insert(_root+"/a2"); + QVERIFY(QFile::exists(_root+"/a1/movefile")); + QFile::rename(_root+"/a1/movefile", _root+"/a2/movefile.renamed" ); QVERIFY(QFile::exists(_root+"/a2/movefile.renamed")); - _loop.processEvents(); - QVERIFY(_checkMark.isEmpty()); // the slot clears the checkmark. + + checkNotifications(); } void cleanupTestCase() { From d04eedeb8d0ead5781c5567edd8dda7af1ad519a Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 7 Nov 2014 09:59:47 +0100 Subject: [PATCH 43/87] OSX: Trust the file watcher. #2297 * Use a bigger default force sync interval (2h) * Allow the file watcher to schedule a sync while a sync for the same file is running. --- src/gui/folderman.cpp | 5 ++++- src/libsync/mirallconfigfile.cpp | 9 ++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gui/folderman.cpp b/src/gui/folderman.cpp index e41f812ce..b443bbfe2 100644 --- a/src/gui/folderman.cpp +++ b/src/gui/folderman.cpp @@ -444,16 +444,19 @@ void FolderMan::slotScheduleSync( const QString& alias ) return; } +#ifndef Q_OS_MAC // The folder watcher fires a lot of bogus notifications during // a sync operation, both for actual user files and the database // and log. Never enqueue a folder for sync while it is syncing. // We lose some genuine sync requests that way, but that can't be // helped. - // ^^ FIXME: Note that this is not the case on OS X + // This works fine on OSX, where the folder watcher does not + // report changes done by our own process. if( _currentSyncFolder == alias ) { qDebug() << "folder " << alias << " is currently syncing. NOT scheduling."; return; } +#endif if( _socketApi ) { // We want the SocketAPI to already now update so that it can show the EVAL icon diff --git a/src/libsync/mirallconfigfile.cpp b/src/libsync/mirallconfigfile.cpp index f2e1549ca..362bfa4a9 100644 --- a/src/libsync/mirallconfigfile.cpp +++ b/src/libsync/mirallconfigfile.cpp @@ -365,7 +365,14 @@ quint64 MirallConfigFile::forceSyncInterval(const QString& connection) const QSettings settings(configFile(), QSettings::IniFormat); settings.beginGroup( con ); - quint64 interval = settings.value( QLatin1String(forceSyncIntervalC), 10 * pollInterval ).toULongLong(); + quint64 defaultInterval = 10 * pollInterval; +#ifdef Q_OS_MAC + // On OSX we trust the file watcher. It does not report changes done + // by our own process and thus it's enabled during a folder's sync run. + // That means we don't need to do a full local discovery often. + defaultInterval = qMax(2 * 60 * 60 * 1000ull, defaultInterval); // >=2 hours +#endif + quint64 interval = settings.value( QLatin1String(forceSyncIntervalC), defaultInterval ).toULongLong(); if( interval < pollInterval) { qDebug() << "Force sync interval is less than the remote poll inteval, reverting to" << pollInterval; interval = pollInterval; From 1ada20ac7b50e5480036c9906199219df13328f4 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 7 Nov 2014 10:14:09 +0100 Subject: [PATCH 44/87] Linux folderwatcher: Get full path of changed file. #2297 --- src/gui/folderwatcher_linux.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gui/folderwatcher_linux.cpp b/src/gui/folderwatcher_linux.cpp index 4d75047dc..61321f9d3 100644 --- a/src/gui/folderwatcher_linux.cpp +++ b/src/gui/folderwatcher_linux.cpp @@ -166,16 +166,16 @@ void FolderWatcherPrivate::slotReceivedNotification(int fd) continue; } - // fire event - // Note: The name of the changed file and stuff could be taken from - // the event data structure. That does not happen yet. + // Fire event for the path that was changed. if (event->len > 0 && event->wd > -1) { + QByteArray fileName(event->name); // qDebug() << Q_FUNC_INFO << event->name; - if (QByteArray(event->name).startsWith(".csync") || - QByteArray(event->name).startsWith(".owncloudsync.log")) { + if (fileName.startsWith(".csync_journal.db") || + fileName.startsWith(".owncloudsync.log")) { // qDebug() << "ignore journal"; } else { - const QString p = _watches[event->wd]; + const QString p = _watches[event->wd] + '/' + fileName; + //qDebug() << "found a change in " << p; _parent->changeDetected(p); } } From 6d09f1b6c0def213fe8ffa2e3bfa91151b62efb6 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 7 Nov 2014 10:53:41 +0100 Subject: [PATCH 45/87] Folder watcher now reports changing paths instead of dirs. --- src/gui/folderman.cpp | 6 ++-- src/gui/folderwatcher.cpp | 17 ++++------ src/gui/folderwatcher.h | 7 ++-- src/gui/folderwatcher_linux.cpp | 1 - test/testfolderwatcher.h | 58 +++++++++++++++++++-------------- 5 files changed, 47 insertions(+), 42 deletions(-) diff --git a/src/gui/folderman.cpp b/src/gui/folderman.cpp index b443bbfe2..f76cb2552 100644 --- a/src/gui/folderman.cpp +++ b/src/gui/folderman.cpp @@ -140,15 +140,15 @@ void FolderMan::registerFolderMonitor( Folder *folder ) fw->addIgnoreListFile( cfg.excludeFile(MirallConfigFile::SystemScope) ); fw->addIgnoreListFile( cfg.excludeFile(MirallConfigFile::UserScope) ); - // Connect the folderChanged signal, which comes with the changed path, + // Connect the pathChanged signal, which comes with the changed path, // to the signal mapper which maps to the folder alias. The changed path // is lost this way, but we do not need it for the current implementation. - connect(fw, SIGNAL(folderChanged(QString)), _folderWatcherSignalMapper, SLOT(map())); + connect(fw, SIGNAL(pathChanged(QString)), _folderWatcherSignalMapper, SLOT(map())); _folderWatcherSignalMapper->setMapping(fw, folder->alias()); _folderWatchers.insert(folder->alias(), fw); // This is at the moment only for the behaviour of the SocketApi. - connect(fw, SIGNAL(folderChanged(QString)), folder, SLOT(watcherSlot(QString))); + connect(fw, SIGNAL(pathChanged(QString)), folder, SLOT(watcherSlot(QString))); } // register the folder with the socket API diff --git a/src/gui/folderwatcher.cpp b/src/gui/folderwatcher.cpp index cb4a4209d..047ec8c09 100644 --- a/src/gui/folderwatcher.cpp +++ b/src/gui/folderwatcher.cpp @@ -130,7 +130,7 @@ void FolderWatcher::changeDetected( const QStringList& paths ) _lastPaths = pathsSet; _timer.restart(); - QSet changedFolders; + QSet changedPaths; // ------- handle ignores: for (int i = 0; i < paths.size(); ++i) { @@ -139,20 +139,15 @@ void FolderWatcher::changeDetected( const QStringList& paths ) continue; } - QFileInfo fi(path); - if (fi.isDir()) { - changedFolders.insert(path); - } else { - changedFolders.insert(fi.dir().path()); - } + changedPaths.insert(path); } - if (changedFolders.isEmpty()) { + if (changedPaths.isEmpty()) { return; } - qDebug() << "detected changes in folders:" << changedFolders; - foreach (const QString &path, changedFolders) { - emit folderChanged(path); + qDebug() << "detected changes in paths:" << changedPaths; + foreach (const QString &path, changedPaths) { + emit pathChanged(path); } } diff --git a/src/gui/folderwatcher.h b/src/gui/folderwatcher.h index bcdb5f0ee..e792ed626 100644 --- a/src/gui/folderwatcher.h +++ b/src/gui/folderwatcher.h @@ -34,7 +34,7 @@ class FolderWatcherPrivate; /* * Folder Watcher monitors a directory and its sub directories * for changes in the local file system. Changes are signalled - * through the folderChanged() signal. + * through the pathChanged() signal. * * Note that if new folders are created, this folderwatcher class * does not automatically adds them to the list of monitored @@ -74,8 +74,9 @@ public: bool pathIsIgnored( const QString& path ); signals: - /** Emitted when one of the paths is changed */ - void folderChanged(const QString &path); + /** Emitted when one of the watched directories or one + * of the contained files is changed. */ + void pathChanged(const QString &path); /** Emitted if an error occurs */ void error(const QString& error); diff --git a/src/gui/folderwatcher_linux.cpp b/src/gui/folderwatcher_linux.cpp index 61321f9d3..437de51b0 100644 --- a/src/gui/folderwatcher_linux.cpp +++ b/src/gui/folderwatcher_linux.cpp @@ -159,7 +159,6 @@ void FolderWatcherPrivate::slotReceivedNotification(int fd) while(i + sizeof(struct inotify_event) < static_cast(len)) { // cast an inotify_event event = (struct inotify_event*)&buffer[i]; - // with the help of watch descriptor, retrieve, corresponding INotify if (event == NULL) { qDebug() << "NULL event"; i += sizeof(struct inotify_event); diff --git a/test/testfolderwatcher.h b/test/testfolderwatcher.h index 6bbe48671..3d69ee543 100644 --- a/test/testfolderwatcher.h +++ b/test/testfolderwatcher.h @@ -73,7 +73,7 @@ private slots: Utility::writeRandomFile( _root+"/a1/movefile"); _watcher = new FolderWatcher(_root); - QObject::connect(_watcher, SIGNAL(folderChanged(QString)), this, SLOT(slotFolderChanged(QString))); + QObject::connect(_watcher, SIGNAL(pathChanged(QString)), this, SLOT(slotFolderChanged(QString))); _timer.singleShot(5000, this, SLOT(slotEnd())); } @@ -91,9 +91,10 @@ private slots: } void testACreate() { // create a new file + QString file(_root + "/foo.txt"); QString cmd; - _requiredNotifications.insert(_root); - cmd = QString("echo \"xyz\" > %1/foo.txt").arg(_root); + _requiredNotifications.insert(file); + cmd = QString("echo \"xyz\" > %1").arg(file); qDebug() << "Command: " << cmd; system(cmd.toLocal8Bit()); @@ -101,12 +102,13 @@ private slots: } void testATouch() { // touch an existing file. - _requiredNotifications.insert(_root+"/a1"); + QString file(_root + "/a1/random.bin"); + _requiredNotifications.insert(file); #ifdef Q_OS_WIN Utility::writeRandomFile(QString("%1/a1/random.bin").arg(_root)); #else QString cmd; - cmd = QString("/usr/bin/touch %1/a1/random.bin").arg(_root); + cmd = QString("/usr/bin/touch %1").arg(file); qDebug() << "Command: " << cmd; system(cmd.toLocal8Bit()); #endif @@ -115,47 +117,55 @@ private slots: } void testCreateADir() { - _requiredNotifications.insert(_root+"/a1/b1"); - _skipNotifications.insert(_root + "/a1/b1/new_dir"); + QString file(_root+"/a1/b1/new_dir"); + _requiredNotifications.insert(file); + //_skipNotifications.insert(_root + "/a1/b1/new_dir"); QDir dir; - dir.mkdir( _root + "/a1/b1/new_dir"); - QVERIFY(QFile::exists(_root + "/a1/b1/new_dir")); + dir.mkdir(file); + QVERIFY(QFile::exists(file)); checkNotifications(); } void testRemoveADir() { - _requiredNotifications.insert(_root+"/a1/b3"); + QString file(_root+"/a1/b3/c3"); + _requiredNotifications.insert(file); QDir dir; - QVERIFY(dir.rmdir(_root+"/a1/b3/c3")); + QVERIFY(dir.rmdir(file)); checkNotifications(); } void testRemoveAFile() { - _requiredNotifications.insert(_root+"/a1/b2"); - QVERIFY(QFile::exists(_root+"/a1/b2/todelete.bin")); - QFile::remove(_root+"/a1/b2/todelete.bin"); - QVERIFY(!QFile::exists(_root+"/a1/b2/todelete.bin")); + QString file(_root+"/a1/b2/todelete.bin"); + _requiredNotifications.insert(file); + QVERIFY(QFile::exists(file)); + QFile::remove(file); + QVERIFY(!QFile::exists(file)); checkNotifications(); } void testRenameAFile() { - _requiredNotifications.insert(_root+"/a2"); - QVERIFY(QFile::exists(_root+"/a2/renamefile")); - QFile::rename(_root+"/a2/renamefile", _root+"/a2/renamefile.renamed" ); - QVERIFY(QFile::exists(_root+"/a2/renamefile.renamed")); + QString file1(_root+"/a2/renamefile"); + QString file2(_root+"/a2/renamefile.renamed"); + _requiredNotifications.insert(file1); + _requiredNotifications.insert(file2); + QVERIFY(QFile::exists(file1)); + QFile::rename(file1, file2); + QVERIFY(QFile::exists(file2)); checkNotifications(); } void testMoveAFile() { - _requiredNotifications.insert(_root+"/a1"); - _requiredNotifications.insert(_root+"/a2"); - QVERIFY(QFile::exists(_root+"/a1/movefile")); - QFile::rename(_root+"/a1/movefile", _root+"/a2/movefile.renamed" ); - QVERIFY(QFile::exists(_root+"/a2/movefile.renamed")); + QString old_file(_root+"/a1/movefile"); + QString new_file(_root+"/a2/movefile.renamed"); + _requiredNotifications.insert(old_file); + _requiredNotifications.insert(new_file); + QVERIFY(QFile::exists(old_file)); + QFile::rename(old_file, new_file); + QVERIFY(QFile::exists(new_file)); checkNotifications(); } From 0fe7a69b393bc7fa0d7b11e243cf5e5fbc438195 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 7 Nov 2014 11:41:21 +0100 Subject: [PATCH 46/87] FolderWatcher: Detect own changes. #2297 --- src/gui/folder.cpp | 31 +++++++++++++++++++++++++++++ src/gui/folder.h | 7 +++++++ src/gui/folderman.cpp | 25 ++--------------------- src/gui/folderman.h | 1 - src/libsync/owncloudpropagator.cpp | 20 +++++++++++++++++++ src/libsync/owncloudpropagator.h | 19 ++++++++++++++++++ src/libsync/propagatedownload.cpp | 1 + src/libsync/propagateremotemove.cpp | 9 +++++++-- src/libsync/propagator_legacy.cpp | 1 + src/libsync/propagatorjobs.cpp | 14 +++++++++---- src/libsync/syncengine.cpp | 21 +++++++++++++++---- src/libsync/syncengine.h | 8 +++++++- 12 files changed, 122 insertions(+), 35 deletions(-) diff --git a/src/gui/folder.cpp b/src/gui/folder.cpp index 9d4577abb..321881e0f 100644 --- a/src/gui/folder.cpp +++ b/src/gui/folder.cpp @@ -540,6 +540,37 @@ int Folder::slotWipeBlacklist() return _journal.wipeBlacklist(); } +void Folder::slotWatchedPathChanged(const QString& path) +{ + // When no sync is running or it's in the prepare phase, we can + // always schedule a new sync. + if (! _engine || _syncResult.status() == SyncResult::SyncPrepare) { + emit scheduleToSync(alias()); + return; + } + + // The folder watcher fires a lot of bogus notifications during + // a sync operation, both for actual user files and the database + // and log. Therefore we check notifications against operations + // the sync is doing to filter out our own changes. + bool ownChange = false; +#ifdef Q_OS_MAC + // On OSX the folder watcher does not report changes done by our + // own process. Therefore nothing needs to be done here! +#else + // Use the path to figure out whether it was our own change + const auto maxNotificationDelay = 15*1000; + qint64 time = _engine->timeSinceFileTouched(path); + if (time != -1 && time < maxNotificationDelay) { + ownChange = true; + } +#endif + + if (! ownChange) { + emit scheduleToSync(alias()); + } +} + void Folder::setConfigFile( const QString& file ) { _configFile = file; diff --git a/src/gui/folder.h b/src/gui/folder.h index 1ac11f64f..5a1c73dce 100644 --- a/src/gui/folder.h +++ b/src/gui/folder.h @@ -154,6 +154,13 @@ public slots: int slotWipeBlacklist(); int blackListEntryCount(); + /** + * Triggered by the folder watcher when a file/dir in this folder + * changes. Needs to check whether this change should trigger a new + * sync run to be scheduled. + */ + void slotWatchedPathChanged(const QString& path); + private slots: void slotSyncStarted(); void slotSyncError(const QString& ); diff --git a/src/gui/folderman.cpp b/src/gui/folderman.cpp index f76cb2552..10c1147b2 100644 --- a/src/gui/folderman.cpp +++ b/src/gui/folderman.cpp @@ -55,10 +55,6 @@ FolderMan::FolderMan(QObject *parent) : connect(_folderChangeSignalMapper, SIGNAL(mapped(const QString &)), this, SIGNAL(folderSyncStateChange(const QString &))); - _folderWatcherSignalMapper = new QSignalMapper(this); - connect(_folderWatcherSignalMapper, SIGNAL(mapped(const QString&)), - this, SLOT(slotScheduleSync(const QString&))); - ne_sock_init(); Q_ASSERT(!_instance); _instance = this; @@ -100,8 +96,6 @@ void FolderMan::unloadFolder( const QString& alias ) _folderChangeSignalMapper->removeMappings(f); if( _folderWatchers.contains(alias)) { - FolderWatcher *fw = _folderWatchers[alias]; - _folderWatcherSignalMapper->removeMappings(fw); _folderWatchers.remove(alias); } _folderMap.remove( alias ); @@ -135,7 +129,7 @@ void FolderMan::registerFolderMonitor( Folder *folder ) if( !folder ) return; if( !_folderWatchers.contains(folder->alias() ) ) { - FolderWatcher *fw = new FolderWatcher(folder->path(), this); + FolderWatcher *fw = new FolderWatcher(folder->path(), folder); MirallConfigFile cfg; fw->addIgnoreListFile( cfg.excludeFile(MirallConfigFile::SystemScope) ); fw->addIgnoreListFile( cfg.excludeFile(MirallConfigFile::UserScope) ); @@ -143,8 +137,7 @@ void FolderMan::registerFolderMonitor( Folder *folder ) // Connect the pathChanged signal, which comes with the changed path, // to the signal mapper which maps to the folder alias. The changed path // is lost this way, but we do not need it for the current implementation. - connect(fw, SIGNAL(pathChanged(QString)), _folderWatcherSignalMapper, SLOT(map())); - _folderWatcherSignalMapper->setMapping(fw, folder->alias()); + connect(fw, SIGNAL(pathChanged(QString)), folder, SLOT(slotWatchedPathChanged(QString))); _folderWatchers.insert(folder->alias(), fw); // This is at the moment only for the behaviour of the SocketApi. @@ -444,20 +437,6 @@ void FolderMan::slotScheduleSync( const QString& alias ) return; } -#ifndef Q_OS_MAC - // The folder watcher fires a lot of bogus notifications during - // a sync operation, both for actual user files and the database - // and log. Never enqueue a folder for sync while it is syncing. - // We lose some genuine sync requests that way, but that can't be - // helped. - // This works fine on OSX, where the folder watcher does not - // report changes done by our own process. - if( _currentSyncFolder == alias ) { - qDebug() << "folder " << alias << " is currently syncing. NOT scheduling."; - return; - } -#endif - if( _socketApi ) { // We want the SocketAPI to already now update so that it can show the EVAL icon // for files/folders. Only do this when not syncing, else we might get a lot diff --git a/src/gui/folderman.h b/src/gui/folderman.h index 347aabb6e..0e4671a00 100644 --- a/src/gui/folderman.h +++ b/src/gui/folderman.h @@ -150,7 +150,6 @@ private: Folder::Map _folderMap; QString _folderConfigPath; QSignalMapper *_folderChangeSignalMapper; - QSignalMapper *_folderWatcherSignalMapper; QString _currentSyncFolder; bool _syncEnabled; QMap _folderWatchers; diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index c97242244..bacf60b3c 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -457,6 +457,26 @@ void OwncloudPropagator::scheduleNextJob() } } +void OwncloudPropagator::addTouchedFile(const QString& fn) +{ + QString file = QDir::cleanPath(fn); + + QElapsedTimer timer; + timer.start(); + + QMutexLocker lock(&_touchedFilesMutex); + _touchedFiles.insert(file, timer); +} + +qint64 OwncloudPropagator::timeSinceFileTouched(const QString& fn) const +{ + QMutexLocker lock(&_touchedFilesMutex); + if (! _touchedFiles.contains(fn)) { + return -1; + } + + return _touchedFiles[fn].elapsed(); +} // ================================================================================ diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index 55bdc9d4d..2ea775b2d 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -24,6 +24,7 @@ #include #include #include +#include #include "syncfileitem.h" #include "syncjournaldb.h" @@ -291,6 +292,19 @@ public: // timeout in seconds static int httpTimeout(); + /** Records that a file was touched by a job. + * + * Thread-safe. + */ + void addTouchedFile(const QString& fn); + + /** Get the ms since a file was touched, or -1 if it wasn't. + * + * Thread-safe. + */ + qint64 timeSinceFileTouched(const QString& fn) const; + + private slots: /** Emit the finished signal and make sure it is only emit once */ @@ -312,6 +326,11 @@ signals: */ void adjustTotalTransmissionSize( qint64 adjust ); +private: + + /** Stores the time since a job touched a file. */ + QHash _touchedFiles; + mutable QMutex _touchedFilesMutex; }; // Job that wait for all the poll jobs to be completed diff --git a/src/libsync/propagatedownload.cpp b/src/libsync/propagatedownload.cpp index 747fc1142..0be1655b5 100644 --- a/src/libsync/propagatedownload.cpp +++ b/src/libsync/propagatedownload.cpp @@ -476,6 +476,7 @@ void PropagateDownloadFileQNAM::downloadFinished() FileSystem::setFileHidden(_tmpFile.fileName(), false); QString error; + _propagator->addTouchedFile(fn); if (!FileSystem::renameReplace(_tmpFile.fileName(), fn, &error)) { // If we moved away the original file due to a conflict but can't // put the downloaded file in its place, we are in a bad spot: diff --git a/src/libsync/propagateremotemove.cpp b/src/libsync/propagateremotemove.cpp index aa2372274..d7888029e 100644 --- a/src/libsync/propagateremotemove.cpp +++ b/src/libsync/propagateremotemove.cpp @@ -58,13 +58,18 @@ void PropagateRemoteMove::start() qDebug() << Q_FUNC_INFO << _item._file << _item._renameTarget; + QString targetFile(_propagator->getFilePath(_item._renameTarget)); + if (_item._file == _item._renameTarget) { // The parents has been renamed already so there is nothing more to do. finalize(); return; } else if (AbstractNetworkJob::preOc7WasDetected && _item._file == QLatin1String("Shared") ) { // Check if it is the toplevel Shared folder and do not propagate it. - if( QFile::rename( _propagator->_localDir + _item._renameTarget, _propagator->_localDir + QLatin1String("Shared")) ) { + QString originalFile(_propagator->getFilePath(QLatin1String("Shared"))); + _propagator->addTouchedFile(originalFile); + _propagator->addTouchedFile(targetFile); + if( QFile::rename( targetFile, originalFile) ) { done(SyncFileItem::NormalError, tr("This folder must not be renamed. It is renamed back to its original name.")); } else { done(SyncFileItem::NormalError, tr("This folder must not be renamed. Please name it back to Shared.")); @@ -131,7 +136,7 @@ void PropagateRemoteMove::slotMoveJobFinished() void PropagateRemoteMove::finalize() { _propagator->_journal->deleteFileRecord(_item._originalFile); - SyncJournalFileRecord record(_item, _propagator->_localDir + _item._renameTarget); + SyncJournalFileRecord record(_item, _propagator->getFilePath(_item._renameTarget)); record._path = _item._renameTarget; _propagator->_journal->setFileRecord(record); diff --git a/src/libsync/propagator_legacy.cpp b/src/libsync/propagator_legacy.cpp index 3f0be0a18..55543b95c 100644 --- a/src/libsync/propagator_legacy.cpp +++ b/src/libsync/propagator_legacy.cpp @@ -712,6 +712,7 @@ void PropagateDownloadFileLegacy::start() FileSystem::setFileHidden(tmpFile.fileName(), false); QString error; + _propagator->addTouchedFile(fn); if (!FileSystem::renameReplace(tmpFile.fileName(), fn, &error)) { done(SyncFileItem::NormalError, error); return; diff --git a/src/libsync/propagatorjobs.cpp b/src/libsync/propagatorjobs.cpp index 9760f2ca7..b99b57b12 100644 --- a/src/libsync/propagatorjobs.cpp +++ b/src/libsync/propagatorjobs.cpp @@ -131,12 +131,14 @@ void PropagateLocalRename::start() if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) return; + QString existingFile = _propagator->getFilePath(_item._file); + QString targetFile = _propagator->getFilePath(_item._renameTarget); + // if the file is a file underneath a moved dir, the _item.file is equal // to _item.renameTarget and the file is not moved as a result. if (_item._file != _item._renameTarget) { emit progress(_item, 0); - qDebug() << "MOVE " << _propagator->_localDir + _item._file << " => " << _propagator->_localDir + _item._renameTarget; - QFile file(_propagator->_localDir + _item._file); + qDebug() << "MOVE " << existingFile << " => " << targetFile; if (QString::compare(_item._file, _item._renameTarget, Qt::CaseInsensitive) != 0 && _propagator->localFileNameClash(_item._renameTarget)) { @@ -149,7 +151,11 @@ void PropagateLocalRename::start() .arg(QDir::toNativeSeparators(_item._file)).arg(QDir::toNativeSeparators(_item._renameTarget)) ); return; } - if (!file.rename(_propagator->_localDir + _item._file, _propagator->_localDir + _item._renameTarget)) { + + _propagator->addTouchedFile(existingFile); + _propagator->addTouchedFile(targetFile); + QFile file(existingFile); + if (!file.rename(targetFile)) { done(SyncFileItem::NormalError, file.errorString()); return; } @@ -160,7 +166,7 @@ void PropagateLocalRename::start() // store the rename file name in the item. _item._file = _item._renameTarget; - SyncJournalFileRecord record(_item, _propagator->_localDir + _item._renameTarget); + SyncJournalFileRecord record(_item, targetFile); record._path = _item._renameTarget; if (!_item._isDirectory) { // Directory are saved at the end diff --git a/src/libsync/syncengine.cpp b/src/libsync/syncengine.cpp index cb5101f06..8a157db0c 100644 --- a/src/libsync/syncengine.cpp +++ b/src/libsync/syncengine.cpp @@ -716,9 +716,6 @@ void SyncEngine::slotDiscoveryJobFinished(int discoveryResult) } } - if (_needsUpdate) - emit(started()); - ne_session_s *session = 0; // that call to set property actually is a get which will return the session csync_set_module_property(_csync_ctx, "get_dav_session", &session); @@ -756,6 +753,10 @@ void SyncEngine::slotDiscoveryJobFinished(int discoveryResult) deleteStaleBlacklistEntries(); _journal->commit("post stale entry removal"); + // Emit the started signal only after the propagator has been set up. + if (_needsUpdate) + emit(started()); + _propagator->start(_syncedItems); } @@ -842,9 +843,11 @@ void SyncEngine::finalize() qDebug() << "CSync run took " << _stopWatch.addLapTime(QLatin1String("Sync Finished")); _stopWatch.stop(); - _propagator.reset(0); _syncRunning = false; emit finished(); + + // Delete the propagator only after emitting the signal. + _propagator.reset(); } void SyncEngine::slotProgress(const SyncFileItem& item, quint64 current) @@ -1130,6 +1133,16 @@ bool SyncEngine::estimateState(QString fn, csync_ftw_type_e t, SyncFileStatus* s return false; } +qint64 SyncEngine::timeSinceFileTouched(const QString& fn) const +{ + // This copy is essential for thread safety. + QSharedPointer prop = _propagator; + if (prop) { + return prop->timeSinceFileTouched(fn); + } + return -1; +} + void SyncEngine::abort() { csync_request_abort(_csync_ctx); diff --git a/src/libsync/syncengine.h b/src/libsync/syncengine.h index 077f118e7..ce36a2527 100644 --- a/src/libsync/syncengine.h +++ b/src/libsync/syncengine.h @@ -69,6 +69,12 @@ public: bool estimateState(QString fn, csync_ftw_type_e t, SyncFileStatus* s); + /** Get the ms since a file was touched, or -1 if it wasn't. + * + * Thread-safe. + */ + qint64 timeSinceFileTouched(const QString& fn) const; + signals: void csyncError( const QString& ); void csyncUnavailable(); @@ -140,7 +146,7 @@ private: QString _remoteUrl; QString _remotePath; SyncJournalDb *_journal; - QScopedPointer _propagator; + QSharedPointer _propagator; QString _lastDeleted; // if the last item was a path and it has been deleted QSet _seenFiles; QThread _thread; From 8b45d1c928718db017faf9ce6c16ffea89c84bc6 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Thu, 20 Nov 2014 13:38:32 +0100 Subject: [PATCH 47/87] Sync: Change force-sync interval to 2h everywhere. #2297 --- src/libsync/mirallconfigfile.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/libsync/mirallconfigfile.cpp b/src/libsync/mirallconfigfile.cpp index 362bfa4a9..84a9d5645 100644 --- a/src/libsync/mirallconfigfile.cpp +++ b/src/libsync/mirallconfigfile.cpp @@ -365,13 +365,7 @@ quint64 MirallConfigFile::forceSyncInterval(const QString& connection) const QSettings settings(configFile(), QSettings::IniFormat); settings.beginGroup( con ); - quint64 defaultInterval = 10 * pollInterval; -#ifdef Q_OS_MAC - // On OSX we trust the file watcher. It does not report changes done - // by our own process and thus it's enabled during a folder's sync run. - // That means we don't need to do a full local discovery often. - defaultInterval = qMax(2 * 60 * 60 * 1000ull, defaultInterval); // >=2 hours -#endif + quint64 defaultInterval = 2 * 60 * 60 * 1000ull; // 2h quint64 interval = settings.value( QLatin1String(forceSyncIntervalC), defaultInterval ).toULongLong(); if( interval < pollInterval) { qDebug() << "Force sync interval is less than the remote poll inteval, reverting to" << pollInterval; From 3e3ca14b4c58fd4567834065e8f05dce3e611939 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Thu, 20 Nov 2014 13:46:44 +0100 Subject: [PATCH 48/87] Print ssl library version only on Qt >=5.0.0. --- src/mirall/syncengine.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mirall/syncengine.cpp b/src/mirall/syncengine.cpp index 971140143..373c7867e 100644 --- a/src/mirall/syncengine.cpp +++ b/src/mirall/syncengine.cpp @@ -544,7 +544,11 @@ void SyncEngine::startSync() qDebug() << "=====sync with existing DB"; } - qDebug() << "=====Using Qt" << qVersion() << "with" << QSslSocket::sslLibraryVersionString().toUtf8().data(); + qDebug() << "=====Using Qt" << qVersion(); +#if QT_VERSION >= QT_VERSION_CHECK(5,0,0) + qDebug() << "=====Using SSL library version" + << QSslSocket::sslLibraryVersionString().toUtf8().data(); +#endif // Note that this seems to output the OpenSSL build version not runtime version: qDebug() << "=====Using" << ne_version_string(); From 65a307970bd9987b90d9b2087affc9c6c3deaf93 Mon Sep 17 00:00:00 2001 From: Klaas Freitag Date: Thu, 20 Nov 2014 18:49:34 +0100 Subject: [PATCH 49/87] Propagator: Compare the actual file size with the request content length The values must match. Otherwise the request did succeed, but the file was not downloaded completely. This fixes https://github.com/owncloud/mirall/issues/2528 --- src/mirall/propagator_qnam.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/mirall/propagator_qnam.cpp b/src/mirall/propagator_qnam.cpp index 199a65047..639104ecf 100644 --- a/src/mirall/propagator_qnam.cpp +++ b/src/mirall/propagator_qnam.cpp @@ -742,6 +742,21 @@ void PropagateDownloadFileQNAM::slotGetFinished() _tmpFile.close(); _tmpFile.flush(); + + /* Check that the size of the GET reply matches the file size. There have been cases + * reported that if a server breaks behind a proxy, the GET is still a 200 but is + * truncated, as described here: https://github.com/owncloud/mirall/issues/2528 + */ + const QByteArray sizeHeader("Content-Length"); + qint64 bodySize = job->reply()->rawHeader(sizeHeader).toLongLong(); + + if( bodySize != _tmpFile.size() ) { + _propagator->_journal->setDownloadInfo(_item._file, SyncJournalDb::DownloadInfo()); + _tmpFile.remove(); + done(SyncFileItem::SoftError, tr("The file could not be downloaded completely.")); + return; + } + downloadFinished(); } From e3b07f569a1934b37b48dc083e5f9f352be8e073 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 21 Nov 2014 08:20:54 +0100 Subject: [PATCH 50/87] FolderWatcherTest: Use Utility::usleep. --- test/testfolderwatcher.h | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/test/testfolderwatcher.h b/test/testfolderwatcher.h index cc0584673..afde0d158 100644 --- a/test/testfolderwatcher.h +++ b/test/testfolderwatcher.h @@ -15,11 +15,6 @@ using namespace Mirall; -class FriendlyThread : public QThread -{ - friend class TestFolderWatcher; -}; - class TestFolderWatcher : public QObject { Q_OBJECT @@ -51,7 +46,7 @@ private: void processAndWait() { _loop.processEvents(); - FriendlyThread::msleep(200); + Utility::usleep(200000); _loop.processEvents(); } From dba2efe367efcf8b29f23f2d4f7a8763d1151582 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Fri, 21 Nov 2014 02:52:45 -0500 Subject: [PATCH 51/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 37 ++++++++++++++++------------- translations/mirall_cs.ts | 37 ++++++++++++++++------------- translations/mirall_de.ts | 37 ++++++++++++++++------------- translations/mirall_el.ts | 37 ++++++++++++++++------------- translations/mirall_en.ts | 37 ++++++++++++++++------------- translations/mirall_es.ts | 39 +++++++++++++++++-------------- translations/mirall_es_AR.ts | 37 ++++++++++++++++------------- translations/mirall_et.ts | 37 ++++++++++++++++------------- translations/mirall_eu.ts | 37 ++++++++++++++++------------- translations/mirall_fa.ts | 37 ++++++++++++++++------------- translations/mirall_fi.ts | 37 ++++++++++++++++------------- translations/mirall_fr.ts | 37 ++++++++++++++++------------- translations/mirall_gl.ts | 37 ++++++++++++++++------------- translations/mirall_hu.ts | 37 ++++++++++++++++------------- translations/mirall_it.ts | 37 ++++++++++++++++------------- translations/mirall_ja.ts | 37 ++++++++++++++++------------- translations/mirall_nl.ts | 37 ++++++++++++++++------------- translations/mirall_pl.ts | 37 ++++++++++++++++------------- translations/mirall_pt.ts | 37 ++++++++++++++++------------- translations/mirall_pt_BR.ts | 45 +++++++++++++++++++++--------------- translations/mirall_ru.ts | 37 ++++++++++++++++------------- translations/mirall_sk.ts | 37 ++++++++++++++++------------- translations/mirall_sl.ts | 37 ++++++++++++++++------------- translations/mirall_sv.ts | 37 ++++++++++++++++------------- translations/mirall_th.ts | 37 ++++++++++++++++------------- translations/mirall_tr.ts | 37 ++++++++++++++++------------- translations/mirall_uk.ts | 37 ++++++++++++++++------------- translations/mirall_zh_CN.ts | 37 ++++++++++++++++------------- translations/mirall_zh_TW.ts | 37 ++++++++++++++++------------- 29 files changed, 616 insertions(+), 467 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 3744e19b7..2b6648d79 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? El fitxer conté caràcters no vàlids que no es poden sincronitzar entre plataformes. - + Unable to initialize a sync journal. No es pot inicialitzar un periòdic de sincronització - + Cannot open the sync journal No es pot obrir el diari de sincronització - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory No es permet perquè no teniu permisos per afegir subcarpetes en aquesta carpeta - + Not allowed because you don't have permission to add parent directory No es permet perquè no teniu permisos per afegir una carpeta inferior - + Not allowed because you don't have permission to add files in that directory No es permet perquè no teniu permisos per afegir fitxers en aquesta carpeta - + Not allowed to upload this file because it is read-only on the server, restoring No es permet pujar aquest fitxer perquè només és de lectura en el servidor, es restaura - - + + Not allowed to remove, restoring No es permet l'eliminació, es restaura - + Local files and share folder removed. Fitxers locals i carpeta compartida esborrats. - + Move not allowed, item restored No es permet moure'l, l'element es restaura - + Move not allowed because %1 is read-only No es permet moure perquè %1 només és de lectura - + the destination el destí - + the source l'origen diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index c173e97a7..3857ddb69 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -1347,7 +1347,12 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)?Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Soubor %1 nemohl být uložen z důvodu kolize názvu se souborem v místním systému! @@ -2072,69 +2077,69 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)?Soubor obsahuje alespoň jeden neplatný znak, který narušuje synchronizaci v prostředí více platforem. - + Unable to initialize a sync journal. Nemohu inicializovat synchronizační žurnál. - + Cannot open the sync journal Nelze otevřít synchronizační žurnál - - + + Ignored because of the "choose what to sync" blacklist Ignorováno podle nastavení "vybrat co synchronizovat" - + Not allowed because you don't have permission to add sub-directories in that directory Není povoleno, protože nemáte oprávnění vytvářet podadresáře v tomto adresáři. - + Not allowed because you don't have permission to add parent directory Není povoleno, protože nemáte oprávnění vytvořit rodičovský adresář - + Not allowed because you don't have permission to add files in that directory Není povoleno, protože nemáte oprávnění přidávat soubory do tohoto adresáře - + Not allowed to upload this file because it is read-only on the server, restoring Není povoleno nahrát tento soubor, protože je na serveru uložen pouze pro čtení, obnovuji - - + + Not allowed to remove, restoring Odstranění není povoleno, obnovuji - + Local files and share folder removed. Místní soubory a sdílený adresář byly odstraněny. - + Move not allowed, item restored Přesun není povolen, položka obnovena - + Move not allowed because %1 is read-only Přesun není povolen, protože %1 je pouze pro čtení - + the destination cílové umístění - + the source zdroj diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index af945f38a..08e825525 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -1348,7 +1348,12 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)?Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht gespeichert geladen werden! @@ -2069,69 +2074,69 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)?Die Datei beinhaltet ungültige Zeichen und kann nicht plattformübergreifend synchronisiert werden. - + Unable to initialize a sync journal. Synchronisationsbericht konnte nicht initialisiert werden. - + Cannot open the sync journal Synchronisationsbericht kann nicht geöffnet werden - - + + Ignored because of the "choose what to sync" blacklist Aufgrund der »Zu synchronisierende Elemente auswählen«-Sperrliste ignoriert - + Not allowed because you don't have permission to add sub-directories in that directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Unterordnern haben - + Not allowed because you don't have permission to add parent directory Nicht erlaubt, da Sie keine Rechte zur Erstellung von Hauptordnern haben - + Not allowed because you don't have permission to add files in that directory Nicht erlaubt, da Sie keine Rechte zum Hinzufügen von Dateien in diesen Ordner haben - + Not allowed to upload this file because it is read-only on the server, restoring Das Hochladen dieser Datei ist nicht erlaubt, da die Datei auf dem Server schreibgeschützt ist, Wiederherstellung - - + + Not allowed to remove, restoring Löschen nicht erlaubt, Wiederherstellung - + Local files and share folder removed. Lokale Dateien und Freigabeordner wurden entfernt. - + Move not allowed, item restored Verschieben nicht erlaubt, Element wiederhergestellt - + Move not allowed because %1 is read-only Verschieben nicht erlaubt, da %1 schreibgeschützt ist - + the destination Das Ziel - + the source Die Quelle diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 323d458c5..603136605 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -1344,7 +1344,12 @@ Do you want to connect unencrypted instead (not recommended)? Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2063,69 +2068,69 @@ Do you want to connect unencrypted instead (not recommended)? Το αρχείο περιέχει άκυρους χαρακτήρες που δεν μπορούν να συγχρονιστούν σε όλα τα συστήματα. - + Unable to initialize a sync journal. Αδυναμία προετοιμασίας αρχείου συγχρονισμού. - + Cannot open the sync journal Αδυναμία ανοίγματος του αρχείου συγχρονισμού - - + + Ignored because of the "choose what to sync" blacklist Αγνοήθηκε εξαιτίας της μαύρης λίστας "διάλεξε τι να συγχρονιστεί" - + Not allowed because you don't have permission to add sub-directories in that directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε υπο-καταλόγους σε αυτό τον κατάλογο - + Not allowed because you don't have permission to add parent directory Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε στο γονεϊκό κατάλογο - + Not allowed because you don't have permission to add files in that directory Δεν επιτρέπεται επειδή δεν έχεται δικαιώματα να προσθέσετε αρχεία σε αυτόν τον κατάλογο - + Not allowed to upload this file because it is read-only on the server, restoring Δεν επιτρέπεται να μεταφορτώσετε αυτό το αρχείο επειδή είναι μόνο για ανάγνωση στο διακομιστή, αποκατάσταση σε εξέλιξη - - + + Not allowed to remove, restoring Δεν επιτρέπεται η αφαίρεση, αποκατάσταση σε εξέλιξη - + Local files and share folder removed. Οι τοπικοί φάκελοι και ο φάκελος κοινής χρήσης αφαιρέθηκαν. - + Move not allowed, item restored Η μετακίνηση δεν επιτρέπεται, το αντικείμενο αποκαταστάθηκε - + Move not allowed because %1 is read-only Η μετακίνηση δεν επιτρέπεται επειδή το %1 είναι μόνο για ανάγνωση - + the destination ο προορισμός - + the source η προέλευση diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 33074ee90..f630de085 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -1338,7 +1338,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2061,69 +2066,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 2a71deb45..29e58b001 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -1347,7 +1347,12 @@ Desea conectar a cambio sin encriptación (no recomendado)? ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! ¡ El fichero %1 no puede guardar debido a un conflicto con el nombre de otro fichero local ! @@ -2070,69 +2075,69 @@ Desea conectar a cambio sin encriptación (no recomendado)? El fichero contiene caracteres inválidos que no pueden ser sincronizados con la plataforma. - + Unable to initialize a sync journal. No se pudo inicializar un registro (journal) de sincronización. - + Cannot open the sync journal No es posible abrir el diario de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado por que se encuentra en la lista negra de "elige que vas a sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory No está permitido, porque no tiene permisos para añadir subcarpetas en este directorio. - + Not allowed because you don't have permission to add parent directory No está permitido porque no tiene permisos para añadir un directorio - + Not allowed because you don't have permission to add files in that directory No está permitido, porque no tiene permisos para crear archivos en este directorio - + Not allowed to upload this file because it is read-only on the server, restoring No está permitido subir este archivo porque es de solo lectura en el servidor, restaurando. - - + + Not allowed to remove, restoring No está permitido borrar, restaurando. - + Local files and share folder removed. Se eliminaron los archivos locales y la carpeta compartida. - + Move not allowed, item restored No está permitido mover, elemento restaurado. - + Move not allowed because %1 is read-only No está permitido mover, porque %1 es solo lectura. - + the destination destino - + the source origen @@ -2338,7 +2343,7 @@ Desea conectar a cambio sin encriptación (no recomendado)? &Start a clean sync (Erases the local folder!) - &Iniciar una sincronización limpia(Borra la carpeta local!) + &Iniciar una sincronización limpia (borra la carpeta local) diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index cd98566a6..cf27c174f 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -1340,7 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2057,69 +2062,69 @@ Do you want to connect unencrypted instead (not recommended)? El archivo contiene caracteres inválidos que no pueden ser sincronizados entre plataforma. - + Unable to initialize a sync journal. Imposible inicializar un diario de sincronización. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 1b34035ee..98bca5808 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Faili %1 ei saa salvestada kuna on nime konflikt kohaliku failiga! @@ -2065,69 +2070,69 @@ Do you want to connect unencrypted instead (not recommended)? Fail sisaldab sobimatuid sümboleid, mida ei saa sünkroniseerida erinevate platvormide vahel. - + Unable to initialize a sync journal. Ei suuda lähtestada sünkroniseeringu zurnaali. - + Cannot open the sync journal Ei suuda avada sünkroniseeringu zurnaali - - + + Ignored because of the "choose what to sync" blacklist "Vali, mida sünkroniseerida" musta nimekirja tõttu vahele jäetud - + Not allowed because you don't have permission to add sub-directories in that directory Pole lubatud, kuna sul puuduvad õigused lisada sellesse kataloogi lisada alam-kataloogi - + Not allowed because you don't have permission to add parent directory Pole lubatud, kuna sul puuduvad õigused lisada ülemkataloog - + Not allowed because you don't have permission to add files in that directory Pole lubatud, kuna sul puuduvad õigused sellesse kataloogi faile lisada - + Not allowed to upload this file because it is read-only on the server, restoring Pole lubatud üles laadida, kuna tegemist on ainult-loetava serveriga, taastan - - + + Not allowed to remove, restoring Eemaldamine pole lubatud, taastan - + Local files and share folder removed. Kohalikud failid ja jagatud kaustad eemaldatud. - + Move not allowed, item restored Liigutamine pole lubatud, üksus taastatud - + Move not allowed because %1 is read-only Liigutamien pole võimalik kuna %1 on ainult lugemiseks - + the destination sihtkoht - + the source allikas diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index 3aa369202..467894175 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2060,69 +2065,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. Ezin izan da sinkronizazio egunerokoa hasieratu. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Ezabatzeko baimenik gabe, berrezartzen - + Local files and share folder removed. - + Move not allowed, item restored Mugitzea ez dago baimenduta, elementua berrezarri da - + Move not allowed because %1 is read-only Mugitzea ez dago baimenduta %1 irakurtzeko bakarrik delako - + the destination helburua - + the source jatorria diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index 6a7864467..7d55e82b9 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -1336,7 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2053,69 +2058,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 1bd0c0de5..542cd729d 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -1339,7 +1339,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2058,69 +2063,69 @@ Do you want to connect unencrypted instead (not recommended)? Tiedosto sisältää virheellisiä merkkejä, joiden vuoksi sitä voi synkronoida eri käyttöjärjestelmien välillä. - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory Ei sallittu, koska sinulla ei ole oikeutta lisätä tiedostoja kyseiseen kansioon - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring Poistaminen ei ole sallittua, palautetaan - + Local files and share folder removed. Paikalliset tiedostot ja jakokansio poistettu. - + Move not allowed, item restored Siirtäminen ei ole sallittua, kohde palautettu - + Move not allowed because %1 is read-only Siirto ei ole sallittu, koska %1 on "vain luku"-tilassa - + the destination kohde - + the source lähde diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 0ddb52915..2b2d2ab74 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -1347,7 +1347,12 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ?Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Le fichier %1 n'a pas pu être sauvegardé en raison d'un conflit sur le nom du fichier local ! @@ -2070,69 +2075,69 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ?Le fichier contient des caractères non valides qui ne peuvent être synchronisés entre plate-formes. - + Unable to initialize a sync journal. Impossible d'initialiser un journal de synchronisation. - + Cannot open the sync journal Impossible d'ouvrir le journal de synchronisation - - + + Ignored because of the "choose what to sync" blacklist Ignoré à cause de la liste noire du contenu à synchroniser. - + Not allowed because you don't have permission to add sub-directories in that directory Non autorisé car vous n'avez pas la permission d'ajouter des sous-dossiers dans ce dossier - + Not allowed because you don't have permission to add parent directory Non autorisé car vous n'avez pas la permission d'ajouter des dossiers parents - + Not allowed because you don't have permission to add files in that directory Non autorisé car vous n'avez pas la permission d'ajouter des fichiers dans ce dossier - + Not allowed to upload this file because it is read-only on the server, restoring Non autorisé à envoyer ce fichier car il est en lecture seule sur le serveur. Restauration - - + + Not allowed to remove, restoring Non autorisé à supprimer. Restauration - + Local files and share folder removed. Fichiers locaux et répertoire de partage supprimés. - + Move not allowed, item restored Déplacement non autorisé, élément restauré - + Move not allowed because %1 is read-only Déplacement non autorisé car %1 est en mode lecture seule - + the destination la destination - + the source la source diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 4873e91ca..cbdf18dfc 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! O ficheiro %1 non se gardou debido a unha colisión co nome dun ficheiro local! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? O ficheiro conten caracteres incorrectos que non poden sincronizarse entre distintas plataformas. - + Unable to initialize a sync journal. Non é posíbel iniciar un rexistro de sincronización. - + Cannot open the sync journal Non foi posíbel abrir o rexistro de sincronización - - + + Ignored because of the "choose what to sync" blacklist Ignorado debido a lista negra de "escolla qué sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Non está permitido xa que non ten permiso para engadir subdirectorios nese directorio - + Not allowed because you don't have permission to add parent directory Non está permitido xa que non ten permiso para engadir un directorio pai - + Not allowed because you don't have permission to add files in that directory Non está permitido xa que non ten permiso para engadir ficheiros nese directorio - + Not allowed to upload this file because it is read-only on the server, restoring Non está permitido o envío xa que o ficheiro é só de lectura no servidor, restaurando - - + + Not allowed to remove, restoring Non está permitido retiralo, restaurando - + Local files and share folder removed. Ficheiros locáis e cartafol compartido eliminados. - + Move not allowed, item restored Nos está permitido movelo, elemento restaurado - + Move not allowed because %1 is read-only Bon está permitido movelo xa que %1 é só de lectura - + the destination o destino - + the source a orixe diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index 649c5e6b7..258c6eb30 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -1336,7 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2053,69 +2058,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index cd01431c8..886e41be3 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -1346,7 +1346,12 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Il file %1 non può essere scaricato a causa di un conflitto con un file locale. - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Il file %1 non può essere salvato a causa di un conflitto con un file locale. @@ -2069,69 +2074,69 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Il file contiene caratteri non validi che non possono essere sincronizzati su diverse piattaforme. - + Unable to initialize a sync journal. Impossibile inizializzare il registro di sincronizzazione. - + Cannot open the sync journal Impossibile aprire il registro di sincronizzazione - - + + Ignored because of the "choose what to sync" blacklist Ignorato in base alla lista nera per la scelta di cosa sincronizzare - + Not allowed because you don't have permission to add sub-directories in that directory Non consentito poiché non disponi dei permessi per aggiungere sottocartelle in quella cartella - + Not allowed because you don't have permission to add parent directory Non consentito poiché non disponi dei permessi per aggiungere la cartella superiore - + Not allowed because you don't have permission to add files in that directory Non consentito poiché non disponi dei permessi per aggiungere file in quella cartella - + Not allowed to upload this file because it is read-only on the server, restoring Il caricamento di questo file non è consentito poiché è in sola lettura sul server, ripristino - - + + Not allowed to remove, restoring Rimozione non consentita, ripristino - + Local files and share folder removed. I file locali e la cartella condivisa sono stati rimossi. - + Move not allowed, item restored Spostamento non consentito, elemento ripristinato - + Move not allowed because %1 is read-only Spostamento non consentito poiché %1 è in sola lettura - + the destination la destinazione - + the source l'origine diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index fdf8bd673..76aee5f04 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -1345,7 +1345,12 @@ Do you want to connect unencrypted instead (not recommended)? ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! %1 はローカルファイル名が衝突しているため保存できません! @@ -2066,69 +2071,69 @@ Do you want to connect unencrypted instead (not recommended)? ファイルに無効な文字が含まれているため、クロスプラットフォーム環境での同期ができません。 - + Unable to initialize a sync journal. 同期ジャーナルの初期化ができません。 - + Cannot open the sync journal 同期ジャーナルを開くことができません - - + + Ignored because of the "choose what to sync" blacklist "同期対象先" ブラックリストにより無視されました。 - + Not allowed because you don't have permission to add sub-directories in that directory そのディレクトリにサブディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add parent directory 親ディレクトリを追加する権限がありません - + Not allowed because you don't have permission to add files in that directory そのディレクトリにファイルを追加する権限がありません - + Not allowed to upload this file because it is read-only on the server, restoring サーバーでは読み取り専用となっているため、このファイルをアップロードすることはできません、復元しています - - + + Not allowed to remove, restoring 削除できません、復元しています - + Local files and share folder removed. ローカルファイルと共有フォルダが削除されました。 - + Move not allowed, item restored 移動できません、項目を復元しました - + Move not allowed because %1 is read-only %1 は読み取り専用のため移動できません - + the destination 移動先 - + the source 移動元 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index e1b09d9ee..ce7f3244c 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -1347,7 +1347,12 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Bestand %1 kan niet worden opgeslagen wegens een lokaal bestandsnaam conflict! @@ -2069,69 +2074,69 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Bestand bevat ongeldige karakters die niet tussen platformen gesynchroniseerd kunnen worden. - + Unable to initialize a sync journal. Niet in staat om een synchronisatie transactielog te starten. - + Cannot open the sync journal Kan het sync transactielog niet openen - - + + Ignored because of the "choose what to sync" blacklist Genegeerd vanwege de "kies wat te synchen" zwarte lijst - + Not allowed because you don't have permission to add sub-directories in that directory Niet toegestaan, omdat u geen rechten hebt om sub-directories aan te maken in die directory - + Not allowed because you don't have permission to add parent directory Niet toegestaan, omdat u geen rechten hebt om een bovenliggende directories toe te voegen - + Not allowed because you don't have permission to add files in that directory Niet toegestaan, omdat u geen rechten hebt om bestanden in die directory toe te voegen - + Not allowed to upload this file because it is read-only on the server, restoring Niet toegestaan om dit bestand te uploaden, omdat het alleen-lezen is op de server, herstellen - - + + Not allowed to remove, restoring Niet toegestaan te verwijderen, herstellen - + Local files and share folder removed. Lokale bestanden en share-map verwijderd. - + Move not allowed, item restored Verplaatsen niet toegestaan, object hersteld - + Move not allowed because %1 is read-only Verplaatsen niet toegestaan omdat %1 alleen-lezen is - + the destination bestemming - + the source bron diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index e661f874d..4db0911e5 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? Plik zawiera nieprawidłowe znaki, które nie mogą być synchronizowane wieloplatformowo. - + Unable to initialize a sync journal. Nie można zainicjować synchronizacji dziennika. - + Cannot open the sync journal Nie można otworzyć dziennika synchronizacji - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie masz uprawnień do dodawania podkatalogów w tym katalogu. - + Not allowed because you don't have permission to add parent directory Nie masz uprawnień by dodać katalog nadrzędny - + Not allowed because you don't have permission to add files in that directory Nie masz uprawnień by dodać pliki w tym katalogu - + Not allowed to upload this file because it is read-only on the server, restoring Wgrywanie niedozwolone, ponieważ plik jest tylko do odczytu na serwerze, przywracanie - - + + Not allowed to remove, restoring Brak uprawnień by usunąć, przywracanie - + Local files and share folder removed. - + Move not allowed, item restored Przenoszenie niedozwolone, obiekt przywrócony - + Move not allowed because %1 is read-only Przenoszenie niedozwolone, ponieważ %1 jest tylko do odczytu - + the destination docelowy - + the source źródło diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 019c30cef..3fb2d0df4 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -1344,7 +1344,12 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)?O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Ficheiro %1 não pode ser guardado devido à existência de um ficheiro local com o mesmo nome. @@ -2068,69 +2073,69 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n O ficheiro contém caracteres inválidos que não podem ser sincronizados pelas várias plataformas. - + Unable to initialize a sync journal. Impossível inicializar sincronização 'journal'. - + Cannot open the sync journal Impossível abrir o jornal de sincronismo - - + + Ignored because of the "choose what to sync" blacklist Ignorado devido à blacklist de escolha para sincronização - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido, porque não tem permissão para adicionar sub-directórios ao directório - + Not allowed because you don't have permission to add parent directory Não permitido, porque não tem permissão para adicionar o directório principal - + Not allowed because you don't have permission to add files in that directory Não permitido, porque não tem permissão para adicionar ficheiros no directório - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o envio deste ficheiro porque é só de leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não autorizado para remoção, restaurando - + Local files and share folder removed. Ficheiros locais e pasta partilhada removidos. - + Move not allowed, item restored Mover não foi permitido, item restaurado - + Move not allowed because %1 is read-only Mover não foi autorizado porque %1 é só de leitura - + the destination o destino - + the source a origem diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index 547693d0a..be43f3715 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -1345,7 +1345,12 @@ Você deseja se conectar sem criptografia (não recomendado)? O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! O arquivo %1 não pode ser salvo por causa de um confronto com um nome de arquivo local! @@ -1552,13 +1557,17 @@ Você deseja se conectar sem criptografia (não recomendado)? %n files are ignored because of previous errors. - + %n arquivo foi ignorado por causa dos erros anteriores. +%n arquivos foram ignorados por causa dos erros anteriores. + %n files are partially downloaded. - + %n arquivo está parcialmente baixado. +%n arquivos estão parcialmente baixados. + @@ -2064,69 +2073,69 @@ Você deseja se conectar sem criptografia (não recomendado)? Arquivos que contém caracteres inválidos não podem ser sincronizados através de plataformas. - + Unable to initialize a sync journal. Impossibilitado de iniciar a sincronização. - + Cannot open the sync journal Não é possível abrir o arquivo de sincronização - - + + Ignored because of the "choose what to sync" blacklist Ignorado por causa da lista negra "escolher o que sincronizar" - + Not allowed because you don't have permission to add sub-directories in that directory Não permitido porque você não tem permissão de criar sub-pastas nesta pasta - + Not allowed because you don't have permission to add parent directory Não permitido porque você não tem permissão de criar pastas mãe - + Not allowed because you don't have permission to add files in that directory Não permitido porque você não tem permissão de adicionar arquivos a esta pasta - + Not allowed to upload this file because it is read-only on the server, restoring Não é permitido fazer o upload deste arquivo porque ele é somente leitura no servidor, restaurando - - + + Not allowed to remove, restoring Não é permitido remover, restaurando - + Local files and share folder removed. Arquivos locais e pasta compartilhada removida. - + Move not allowed, item restored Não é permitido mover, item restaurado - + Move not allowed because %1 is read-only Não é permitido mover porque %1 é somente para leitura - + the destination o destino - + the source a fonte diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 024069fbf..75e583a88 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не может быть загружен из-за локальных конфликтов имен! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? Файл содержит недопустимые символы, которые невозможно синхронизировать между платформами. - + Unable to initialize a sync journal. Не удалось инициализировать журнал синхронизации. - + Cannot open the sync journal Не удаётся открыть журнал синхронизации - - + + Ignored because of the "choose what to sync" blacklist Игнорируется из-за черного списка в "выбрать что синхронизировать" - + Not allowed because you don't have permission to add sub-directories in that directory Недопустимо из-за отсутствия у вас разрешений на добавление подпапок в этой папке - + Not allowed because you don't have permission to add parent directory Недопустимо из-за отсутствия у вас разрешений на добавление родительской папки - + Not allowed because you don't have permission to add files in that directory Недопустимо из-за отсутствия у вас разрешений на добавление файлов в эту папку - + Not allowed to upload this file because it is read-only on the server, restoring Недопустимо отправить этот файл поскольку на севрере он помечен только для чтения, восстанавливаем - - + + Not allowed to remove, restoring Недопустимо удалить, восстанавливаем - + Local files and share folder removed. Локальные файлы и папки, добавленные в общий доступ, удалены. - + Move not allowed, item restored Перемещение недопустимо, элемент восстановлен - + Move not allowed because %1 is read-only Перемещение недопустимо, поскольку %1 помечен только для чтения - + the destination Назначение - + the source Источник diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index be969c104..a1c57230e 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? Súbor obsahuje neplatné znaky, ktoré nemôžu byť zosynchronizované medzi platformami. - + Unable to initialize a sync journal. Nemôžem inicializovať synchronizačný žurnál. - + Cannot open the sync journal Nemožno otvoriť sync žurnál - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára podadresáre. - + Not allowed because you don't have permission to add parent directory Nie je dovolené, pretože nemáte oprávnenie pridať nadradený adresár. - + Not allowed because you don't have permission to add files in that directory Nie je dovolené, pretože nemáte oprávnenie pridávať do tohto adresára súbory. - + Not allowed to upload this file because it is read-only on the server, restoring Nie je dovolené tento súbor nahrať, pretože je na serveri iba na čítanie. Obnovuje sa. - - + + Not allowed to remove, restoring Nie je dovolené odstrániť. Obnovuje sa. - + Local files and share folder removed. - + Move not allowed, item restored Presunutie nie je dovolené. Položka obnovená. - + Move not allowed because %1 is read-only Presunutie nie je dovolené, pretože %1 je na serveri iba na čítanie - + the destination cieľ - + the source zdroj diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 6ecec88f2..f7b61484d 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -1347,7 +1347,12 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Datoteke %1 ni mogoče prejeti zaradi neskladja z imenom krajevne datoteke! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Datoteke %1 ni mogoče shraniti zaradi neskladja z imenom obstoječe datoteke! @@ -2074,69 +2079,69 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Ime datoteke vsebuje neveljavne znake, ki niso podprti na vseh okoljih. - + Unable to initialize a sync journal. Dnevnika usklajevanja ni mogoče začeti. - + Cannot open the sync journal Ni mogoče odpreti dnevnika usklajevanja - - + + Ignored because of the "choose what to sync" blacklist Prezrto, ker ni neizbrano za usklajevanje - + Not allowed because you don't have permission to add sub-directories in that directory Ni ustreznih dovoljenj za dodajanje podmap v izbrano mapo. - + Not allowed because you don't have permission to add parent directory Ni ustreznih dovoljenj za dodajanje nadrejene mape. - + Not allowed because you don't have permission to add files in that directory Ni ustreznih dovoljenj za dodajanje datotek v izbrano mapo. - + Not allowed to upload this file because it is read-only on the server, restoring Ni dovoljeno pošiljati te datoteke, ker ima določena dovoljenja le za branje. Datoteka bo obnovljena na izvorno različico. - - + + Not allowed to remove, restoring Odstranitev ni dovoljena, datoteka bo obnovljena. - + Local files and share folder removed. Krajevne datoteke in mape v souporabi so odstranjene. - + Move not allowed, item restored Premikanje ni dovoljeno, datoteka bo obnovljena. - + Move not allowed because %1 is read-only Premikanje ni dovoljeno, ker je nastavljeno določilo %1 le za branje. - + the destination cilj - + the source vir diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index 77c020007..c04f7c15f 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -1343,7 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2062,69 +2067,69 @@ Do you want to connect unencrypted instead (not recommended)? Filen innehåller ogiltiga tecken som inte kan synkas oberoende av plattform. - + Unable to initialize a sync journal. Kan inte initialisera en synk journal. - + Cannot open the sync journal Kunde inte öppna synk journalen - - + + Ignored because of the "choose what to sync" blacklist Ignorerad eftersom den är svartlistad i "välj vad som ska synkas" - + Not allowed because you don't have permission to add sub-directories in that directory Går ej att genomföra då du saknar rättigheter att lägga till underkataloger i den katalogen - + Not allowed because you don't have permission to add parent directory Går ej att genomföra då du saknar rättigheter att lägga till någon moderkatalog - + Not allowed because you don't have permission to add files in that directory Går ej att genomföra då du saknar rättigheter att lägga till filer i den katalogen - + Not allowed to upload this file because it is read-only on the server, restoring Inte behörig att ladda upp denna fil då den är skrivskyddad på servern, återställer - - + + Not allowed to remove, restoring Inte behörig att radera, återställer - + Local files and share folder removed. Lokala filer och mappar som är delade är borttagna. - + Move not allowed, item restored Det gick inte att genomföra flytten, objektet återställs - + Move not allowed because %1 is read-only Det gick inte att genomföra flytten då %1 är skrivskyddad - + the destination destinationen - + the source källan diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index 509353d3d..d380f4aff 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -1336,7 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2053,69 +2058,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 1fcf3ab31..a5c24d28c 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -1347,7 +1347,12 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)?%1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi! @@ -2070,69 +2075,69 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)?Dosya, çapraz platform arasında eşitlenemeyecek karakterler içeriyor. - + Unable to initialize a sync journal. Bir eşitleme günlüğü başlatılamadı. - + Cannot open the sync journal Eşitleme günlüğü açılamıyor - - + + Ignored because of the "choose what to sync" blacklist "Eşitlenecekleri seçin" kara listesinde olduğundan yoksayıldı. - + Not allowed because you don't have permission to add sub-directories in that directory Bu dizine alt dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add parent directory Üst dizin ekleme yetkiniz olmadığından izin verilmedi - + Not allowed because you don't have permission to add files in that directory Bu dizine dosya ekleme yetkiniz olmadığından izin verilmedi - + Not allowed to upload this file because it is read-only on the server, restoring Sunucuda salt okunur olduğundan, bu dosya yüklenemedi, geri alınıyor - - + + Not allowed to remove, restoring Kaldırmaya izin verilmedi, geri alınıyor - + Local files and share folder removed. Yerel dosyalar ve paylaşım klasörü kaldırıldı. - + Move not allowed, item restored Taşımaya izin verilmedi, öge geri alındı - + Move not allowed because %1 is read-only %1 salt okunur olduğundan taşımaya izin verilmedi - + the destination hedef - + the source kaynak diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index fa124915e..41134b733 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -1347,7 +1347,12 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не завантажено, через локальний конфлікт ім'я! - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! Файл %1 не збережено, через локальний конфлікт ім'я! @@ -2072,69 +2077,69 @@ Do you want to connect unencrypted instead (not recommended)? Файл містить недопустимі символи, через це синхронізація між платформами неможлива. - + Unable to initialize a sync journal. Не вдалося ініціалізувати протокол синхронізації. - + Cannot open the sync journal Не вдається відкрити протокол синхронізації - - + + Ignored because of the "choose what to sync" blacklist Ігнорується через чорний список в "обрати що синхронізувати" - + Not allowed because you don't have permission to add sub-directories in that directory Не дозволено через відсутність прав на додавання підкаталогів в цій теці. - + Not allowed because you don't have permission to add parent directory Не дозволено через відсутність прав на додавання батьківської теки. - + Not allowed because you don't have permission to add files in that directory Не дозволено через відсутність прав на додавання файлів в цю теку. - + Not allowed to upload this file because it is read-only on the server, restoring Не дозволено завантажувати цей файл, оскільки він має дозвіл лише на перегляд, відновлюємо - - + + Not allowed to remove, restoring Не дозволено видаляти, відновлюємо - + Local files and share folder removed. Локальні файли та теки в загальному доступі було видалено. - + Move not allowed, item restored Переміщення не дозволено, елемент відновлено - + Move not allowed because %1 is read-only Переміщення не дозволено, оскільки %1 помічений тільки для перегляду - + the destination призначення - + the source джерело diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index a2e26f6b4..747a475df 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -1340,7 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2059,69 +2064,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. 无法初始化同步日志 - + Cannot open the sync journal 无法打开同步日志 - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 4c9cbeb4a..00edbaebb 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -1336,7 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + + The file could not be downloaded completely. + + + + File %1 cannot be saved because of a local file name clash! @@ -2053,69 +2058,69 @@ Do you want to connect unencrypted instead (not recommended)? - + Unable to initialize a sync journal. - + Cannot open the sync journal - - + + Ignored because of the "choose what to sync" blacklist - + Not allowed because you don't have permission to add sub-directories in that directory - + Not allowed because you don't have permission to add parent directory - + Not allowed because you don't have permission to add files in that directory - + Not allowed to upload this file because it is read-only on the server, restoring - - + + Not allowed to remove, restoring - + Local files and share folder removed. - + Move not allowed, item restored - + Move not allowed because %1 is read-only - + the destination - + the source From 41568c885d6f80a1691f382c46e13964d1cdb992 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 21 Nov 2014 11:03:14 +0100 Subject: [PATCH 52/87] Propagator: only check the content-lenght if it is there If content-lenght is 0, don't chack it is the size we recieved. It can be zero when using HTTP chunk encoding. Also do not remove the temporary file so it can be re-used on the next sync and ask for a new sync immediatly to re-do the sync. Fixup the fix to task #2528 --- src/mirall/propagator_qnam.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/mirall/propagator_qnam.cpp b/src/mirall/propagator_qnam.cpp index 639104ecf..674f8163e 100644 --- a/src/mirall/propagator_qnam.cpp +++ b/src/mirall/propagator_qnam.cpp @@ -750,9 +750,8 @@ void PropagateDownloadFileQNAM::slotGetFinished() const QByteArray sizeHeader("Content-Length"); qint64 bodySize = job->reply()->rawHeader(sizeHeader).toLongLong(); - if( bodySize != _tmpFile.size() ) { - _propagator->_journal->setDownloadInfo(_item._file, SyncJournalDb::DownloadInfo()); - _tmpFile.remove(); + if(bodySize > 0 && bodySize != _tmpFile.size() ) { + _propagator->_anotherSyncNeeded = true; done(SyncFileItem::SoftError, tr("The file could not be downloaded completely.")); return; } From 78362af168b1de2135cc44bd376c92297c36d7d7 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 21 Nov 2014 12:15:41 +0100 Subject: [PATCH 53/87] Compile with TOKEN_AUTH_ONLY (QtGui is not included in that case) --- CMakeLists.txt | 2 ++ src/libsync/CMakeLists.txt | 2 +- src/libsync/mirallaccessmanager.cpp | 9 ++++++++- src/libsync/owncloudtheme.cpp | 3 ++- src/libsync/owncloudtheme.h | 8 +++++--- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9431f44a2..95e5e2dd8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -173,9 +173,11 @@ set(TRANSLATIONS ${TRANS_FILES}) add_subdirectory(csync) add_subdirectory(src) +if(NOT BUILD_LIBRARIES_ONLY) add_subdirectory(shell_integration) add_subdirectory(doc) add_subdirectory(admin) +endif(NOT BUILD_LIBRARIES_ONLY) if(UNIT_TESTING) include(CTest) diff --git a/src/libsync/CMakeLists.txt b/src/libsync/CMakeLists.txt index dd1699ef8..27c045b49 100644 --- a/src/libsync/CMakeLists.txt +++ b/src/libsync/CMakeLists.txt @@ -33,7 +33,6 @@ endif() set(libsync_SRCS account.cpp - authenticationdialog.cpp bandwidthmanager.cpp clientproxy.cpp connectionvalidator.cpp @@ -83,6 +82,7 @@ else() creds/shibboleth/shibbolethwebview.cpp creds/shibboleth/shibbolethrefresher.cpp creds/shibboleth/shibbolethuserjob.cpp + authenticationdialog.cpp ) endif() diff --git a/src/libsync/mirallaccessmanager.cpp b/src/libsync/mirallaccessmanager.cpp index e0dc23bde..ae608c032 100644 --- a/src/libsync/mirallaccessmanager.cpp +++ b/src/libsync/mirallaccessmanager.cpp @@ -19,7 +19,10 @@ #include #include +#ifndef TOKEN_AUTH_ONLY #include "authenticationdialog.h" +#endif + #include "cookiejar.h" #include "mirallaccessmanager.h" #include "utility.h" @@ -87,6 +90,7 @@ void MirallAccessManager::slotProxyAuthenticationRequired(const QNetworkProxy &p } void MirallAccessManager::slotAuthenticationRequired(QNetworkReply *reply, QAuthenticator *authenticator) { +#ifndef TOKEN_AUTH_ONLY // do not handle 401 created by the networkjobs. We may want // to eventually exempt some, but for now we need // it only for other things, e.g. the browser. Would we handle @@ -106,6 +110,9 @@ void MirallAccessManager::slotAuthenticationRequired(QNetworkReply *reply, QAuth authenticator->setUser(dialog.user()); authenticator->setPassword(dialog.password()); } +#else + Q_UNUSED(reply) Q_UNUSED(authenticator) + Q_ASSERT(!"MirallAccessManager::slotAuthenticationRequired called"); +#endif } - } // ns Mirall diff --git a/src/libsync/owncloudtheme.cpp b/src/libsync/owncloudtheme.cpp index 7dd2ac268..6e8946193 100644 --- a/src/libsync/owncloudtheme.cpp +++ b/src/libsync/owncloudtheme.cpp @@ -75,7 +75,6 @@ QIcon ownCloudTheme::applicationIcon( ) const return themeIcon( QLatin1String("owncloud-icon") ); } -#endif QVariant ownCloudTheme::customMedia(Theme::CustomMediaType type) { @@ -90,6 +89,8 @@ QVariant ownCloudTheme::customMedia(Theme::CustomMediaType type) } } +#endif + QString ownCloudTheme::helpUrl() const { return QString::fromLatin1("http://doc.owncloud.org/desktop/%1.%2/").arg(MIRALL_VERSION_MAJOR).arg(MIRALL_VERSION_MINOR); diff --git a/src/libsync/owncloudtheme.h b/src/libsync/owncloudtheme.h index 9ab83a9ab..81331be03 100644 --- a/src/libsync/owncloudtheme.h +++ b/src/libsync/owncloudtheme.h @@ -27,20 +27,22 @@ public: QString configFileName() const Q_DECL_OVERRIDE; QString about() const Q_DECL_OVERRIDE; - QPixmap splashScreen() const; - QIcon folderIcon( const QString& ) const; +#ifndef TOKEN_AUTH_ONLY QIcon trayFolderIcon( const QString& ) const Q_DECL_OVERRIDE; QIcon applicationIcon() const Q_DECL_OVERRIDE; +#endif QString appName() const Q_DECL_OVERRIDE; QString appNameGUI() const Q_DECL_OVERRIDE; - QVariant customMedia(CustomMediaType type) Q_DECL_OVERRIDE; QString helpUrl() const Q_DECL_OVERRIDE; +#ifndef TOKEN_AUTH_ONLY + QVariant customMedia(CustomMediaType type) Q_DECL_OVERRIDE; QColor wizardHeaderBackgroundColor() const Q_DECL_OVERRIDE; QColor wizardHeaderTitleColor() const Q_DECL_OVERRIDE; QPixmap wizardHeaderLogo() const Q_DECL_OVERRIDE; +#endif private: From fab82107bb22b4ef21f54e7b1df4c1e618d89982 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Fri, 21 Nov 2014 16:34:30 +0100 Subject: [PATCH 54/87] OS X: Don't use hardcoded name in packages file --- admin/osx/macosx.pkgproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/osx/macosx.pkgproj b/admin/osx/macosx.pkgproj index 3da43c945..516f0c39f 100644 --- a/admin/osx/macosx.pkgproj +++ b/admin/osx/macosx.pkgproj @@ -1213,7 +1213,7 @@ LANGUAGE English VALUE - ownCloud Client + @APPLICATION_NAME@ Client @@ -1413,7 +1413,7 @@ NAME - ownCloud Installer + @APPLICATION_NAME@ Installer REFERENCE_FOLDER_PATH @CMAKE_INSTALL_DIR@ From 1c001ee13865ceb4598c989e5308d27aead74540 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Fri, 21 Nov 2014 16:47:15 +0100 Subject: [PATCH 55/87] Folder: Don't blindly trigger sync on first EtagJob result For #2352 --- src/mirall/folder.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mirall/folder.cpp b/src/mirall/folder.cpp index 8b22144ea..e9678ba9f 100644 --- a/src/mirall/folder.cpp +++ b/src/mirall/folder.cpp @@ -321,7 +321,11 @@ void Folder::etagRetreived(const QString& etag) // re-enable sync if it was disabled because network was down FolderMan::instance()->setSyncEnabled(true); - if (_lastEtag != etag) { + if (_lastEtag.isEmpty()) { + _lastEtag = etag; + // don't schedule a sync in this case, the _lastEtag is empty because it is the start + // and a sync was scheduled through other means anyway. + } else if (_lastEtag != etag) { _lastEtag = etag; emit scheduleToSync(alias()); } From c460b3f3be181de35d8e1b6baf6be0ea5ee64e1e Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 21 Nov 2014 16:55:46 +0100 Subject: [PATCH 56/87] Bandwith manager: It needs do be initialiazed after the limits of the propagator --- src/libsync/owncloudpropagator.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index 2ea775b2d..a0cfeb1c1 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -244,7 +244,6 @@ public: SyncJournalDb * const _journal; bool _finishedEmited; // used to ensure that finished is only emit once - BandwidthManager _bandwidthManager; public: OwncloudPropagator(ne_session_s *session, const QString &localDir, const QString &remoteDir, const QString &remoteFolder, @@ -265,6 +264,7 @@ public: QAtomicInt _downloadLimit; QAtomicInt _uploadLimit; + BandwidthManager _bandwidthManager; QAtomicInt _abortRequested; // boolean set by the main thread to abort. From 8c57e7621bfb05c141c2cfaa0f8cc3782f96462b Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sat, 22 Nov 2014 01:25:37 -0500 Subject: [PATCH 57/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 42 ++++++++++----------- translations/mirall_cs.ts | 44 +++++++++++----------- translations/mirall_de.ts | 44 +++++++++++----------- translations/mirall_el.ts | 42 ++++++++++----------- translations/mirall_en.ts | 42 ++++++++++----------- translations/mirall_es.ts | 44 +++++++++++----------- translations/mirall_es_AR.ts | 42 ++++++++++----------- translations/mirall_et.ts | 42 ++++++++++----------- translations/mirall_eu.ts | 42 ++++++++++----------- translations/mirall_fa.ts | 42 ++++++++++----------- translations/mirall_fi.ts | 42 ++++++++++----------- translations/mirall_fr.ts | 47 ++++++++++++------------ translations/mirall_gl.ts | 42 ++++++++++----------- translations/mirall_hu.ts | 42 ++++++++++----------- translations/mirall_it.ts | 44 +++++++++++----------- translations/mirall_ja.ts | 42 ++++++++++----------- translations/mirall_nl.ts | 42 ++++++++++----------- translations/mirall_pl.ts | 42 ++++++++++----------- translations/mirall_pt.ts | 42 ++++++++++----------- translations/mirall_pt_BR.ts | 47 ++++++++++++------------ translations/mirall_ru.ts | 71 +++++++++++++++++++++--------------- translations/mirall_sk.ts | 42 ++++++++++----------- translations/mirall_sl.ts | 42 ++++++++++----------- translations/mirall_sv.ts | 42 ++++++++++----------- translations/mirall_th.ts | 42 ++++++++++----------- translations/mirall_tr.ts | 44 +++++++++++----------- translations/mirall_uk.ts | 42 ++++++++++----------- translations/mirall_zh_CN.ts | 42 ++++++++++----------- translations/mirall_zh_TW.ts | 42 ++++++++++----------- 29 files changed, 638 insertions(+), 629 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 2b6648d79..39ca34c00 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -309,89 +309,89 @@ Temps restant total %5 No es pot llegir %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 altres fitxers s'han esborrat - + %1 has been removed. %1 names a file. S'ha esborrat '%1' - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 altres fitxers s'han descarregat. - + %1 has been downloaded. %1 names a file. S'ha descarregat %1 - + %1 and %2 other files have been updated. %1 i %2 altres fitxer(s) s'han actualitzat. - + %1 has been updated. %1 names a file. S'ha actualitzat %1 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han reanomenat. - + %1 has been renamed to %2. %1 and %2 name files. %1 s'ha reanomenat a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han eliminat. - + %1 has been moved to %2. %1 s'ha mogut a %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. %1 no s'ha pogut sincronitzar degut a un error. Mira el registre per detalls. - + Sync Activity Activitat de sincronització - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Això podria ser perquè la carpeta ha estat reconfigurada silenciosament, o que Esteu segur que voleu executar aquesta operació? - + Remove All Files? Esborra tots els fitxers? - + Remove all files Esborra tots els fitxers - + Keep files Mantén els fitxers @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 3857ddb69..b2ef4d0d9 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -309,89 +309,89 @@ Celkový zbývající čas %5 %1 není čitelný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 dalších souborů bylo odebráno. - + %1 has been removed. %1 names a file. %1 byl odebrán. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 dalších souborů bylo staženo. - + %1 has been downloaded. %1 names a file. %1 byl stažen. - + %1 and %2 other files have been updated. %1 a %2 dalších souborů bylo aktualizováno. - + %1 has been updated. %1 names a file. %1 byl aktualizován. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 byl přejmenován na %2 a %3 dalších souborů bylo přejmenováno. - + %1 has been renamed to %2. %1 and %2 name files. %1 byl přejmenován na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 byl přesunut do %2 a %3 dalších souborů bylo přesunuto. - + %1 has been moved to %2. %1 byl přemístěn do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 a %2 další soubory nebyly kvůli chybě synchronizovány. Detaily jsou k nalezení v logu. - + %1 could not be synced due to an error. See the log for details. %1 nebyl kvůli chybě synchronizován. Detaily jsou k nalezení v logu. - + Sync Activity Průběh synchronizace - + Could not read system exclude file Nezdařilo se přečtení systémového exclude souboru - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto může být způsobeno změnou v nastavení synchronizace složky nebo tím Opravdu chcete provést tuto akci? - + Remove All Files? Odstranit všechny soubory? - + Remove all files Odstranit všechny soubory - + Keep files Ponechat soubory @@ -1347,12 +1347,12 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)?Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému! - + The file could not be downloaded completely. - + Soubor nemohl být kompletně stažen. - + File %1 cannot be saved because of a local file name clash! Soubor %1 nemohl být uložen z důvodu kolize názvu se souborem v místním systému! diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 08e825525..b2a5d2a85 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -310,89 +310,89 @@ Gesamtzeit übrig %5 %1 ist nicht lesbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 und %2 andere Dateien wurden gelöscht. - + %1 has been removed. %1 names a file. %1 wurde gelöscht. - + %1 and %2 other files have been downloaded. %1 names a file. %1 und %2 andere Dateien wurden heruntergeladen. - + %1 has been downloaded. %1 names a file. %1 wurde heruntergeladen. - + %1 and %2 other files have been updated. %1 und %2 andere Dateien wurden aktualisiert. - + %1 has been updated. %1 names a file. %1 wurde aktualisiert. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 wurde in %2 umbenannt und %3 andere Dateien wurden umbenannt. - + %1 has been renamed to %2. %1 and %2 name files. %1 wurde in %2 umbenannt. - + %1 has been moved to %2 and %3 other files have been moved. %1 wurde in %2 verschoben und %3 andere Dateien wurden verschoben. - + %1 has been moved to %2. %1 wurde in %2 verschoben. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 und %2 weitere Dateien konnten aufgrund von Fehlern nicht synchronisiert werden. Schauen Sie in das Protokoll für Details. - + %1 could not be synced due to an error. See the log for details. %1 konnte aufgrund eines Fehlers nicht synchronisiert werden. Schauen Sie in das Protokoll für Details. - + Sync Activity Synchronisierungsaktivität - + Could not read system exclude file Systemeigene Ausschlussdatei kann nicht gelesen werden - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Vielleicht wurde der Ordner neu konfiguriert, oder alle Dateien wurden händisch Sind Sie sicher, dass sie diese Operation durchführen wollen? - + Remove All Files? Alle Dateien löschen? - + Remove all files Lösche alle Dateien - + Keep files Dateien behalten @@ -1348,12 +1348,12 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)?Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! - + The file could not be downloaded completely. - + Die Datei konnte nicht vollständig herunter geladen werden. - + File %1 cannot be saved because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht gespeichert geladen werden! diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 603136605..f25aceb2b 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -310,89 +310,89 @@ Total time left %5 Το %1 δεν είναι αναγνώσιμο. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. Το %1 και άλλα %2 αρχεία αφαιρέθηκαν. - + %1 has been removed. %1 names a file. Το %1 αφαιρέθηκε. - + %1 and %2 other files have been downloaded. %1 names a file. Το αρχείο %1 και άλλα %2 αρχεία έχουν ληφθεί. - + %1 has been downloaded. %1 names a file. Το %1 έχει ληφθεί. - + %1 and %2 other files have been updated. Το αρχείο %1 και %2 άλλα αρχεία έχουν ενημερωθεί. - + %1 has been updated. %1 names a file. Το %1 έχει ενημερωθεί. - + %1 has been renamed to %2 and %3 other files have been renamed. Το αρχείο %1 έχει μετονομαστεί σε %2 και άλλα %3 αρχεία έχουν μετονομαστεί. - + %1 has been renamed to %2. %1 and %2 name files. Το %1 έχει μετονομαστεί σε %2. - + %1 has been moved to %2 and %3 other files have been moved. Το αρχείο %1 έχει μετακινηθεί στο %2 και %3 άλλα αρχεία έχουν μετακινηθεί. - + %1 has been moved to %2. Το %1 έχει μετακινηθεί στο %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 και %2 άλλα αρχεία δεν ήταν δυνατό να συγχρονιστούν εξαιτίας σφαλμάτων. Δείτε το αρχείο καταγραφής για λεπτομέρειες. - + %1 could not be synced due to an error. See the log for details. %1 δεν ήταν δυνατό να συγχρονιστεί εξαιτίας ενός σφάλματος. Δείτε το αρχείο καταγραφής για λεπτομέρειες. - + Sync Activity Δραστηριότητα Συγχρονισμού - + Could not read system exclude file Αδυναμία ανάγνωσης αρχείου αποκλεισμού συστήματος - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Are you sure you want to perform this operation? Είστε σίγουροι ότι θέλετε να εκτελέσετε αυτή τη λειτουργία; - + Remove All Files? Αφαίρεση Όλων των Αρχείων; - + Remove all files Αφαίρεση όλων των αρχείων - + Keep files Διατήρηση αρχείων @@ -1344,12 +1344,12 @@ Do you want to connect unencrypted instead (not recommended)? Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index f630de085..fc2a82ad4 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -310,106 +310,106 @@ Total time left %5 - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1338,12 +1338,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 29e58b001..c1d571653 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -309,89 +309,89 @@ Tiempo restante %5 %1 es ilegible. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 y %2 otros archivos han sido eliminados. - + %1 has been removed. %1 names a file. %1 ha sido eliminado. - + %1 and %2 other files have been downloaded. %1 names a file. %1 y %2 otros archivos han sido descargados. - + %1 has been downloaded. %1 names a file. %1 ha sido descargado. - + %1 and %2 other files have been updated. %1 y %2 otros archivos han sido actualizados. - + %1 has been updated. %1 names a file. %1 ha sido actualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 ha sido renombrado a %2 y %3 otros archivos han sido renombrados. - + %1 has been renamed to %2. %1 and %2 name files. %1 ha sido renombrado a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 ha sido movido a %2 y %3 otros archivos han sido movidos. - + %1 has been moved to %2. %1 ha sido movido a %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 y otros %2 archivos no pudieron ser sincronizados debido a errores. Para más detalles, vea el registro. - + %1 could not be synced due to an error. See the log for details. %1 no pudo ser sincronizado debido a un error. Para más detalles, vea el registro. - + Sync Activity Actividad en la Sincronización - + Could not read system exclude file No se pudo leer el archivo de exclusión del sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Esto se puede deber a que la carpeta fue reconfigurada de forma silenciosa o a q Está seguro de que desea realizar esta operación? - + Remove All Files? Eliminar todos los archivos? - + Remove all files Eliminar todos los archivos - + Keep files Conservar archivos @@ -1347,12 +1347,12 @@ Desea conectar a cambio sin encriptación (no recomendado)? ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! - + The file could not be downloaded completely. - + No se pudo descargar el archivo completamente. - + File %1 cannot be saved because of a local file name clash! ¡ El fichero %1 no puede guardar debido a un conflicto con el nombre de otro fichero local ! diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index cf27c174f..fdc31015a 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -308,89 +308,89 @@ Total time left %5 No se puede leer %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Actividad de Sync - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o ¿Estás seguro de que querés realizar esta operación? - + Remove All Files? ¿Borrar todos los archivos? - + Remove all files Borrar todos los archivos - + Keep files Conservar archivos @@ -1340,12 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 98bca5808..6b4997062 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -309,89 +309,89 @@ Aega kokku jäänud %5 %1 pole loetav. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ja %2 teist faili eemaldati. - + %1 has been removed. %1 names a file. %1 on eemaldatud. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ja %2 teist faili on alla laaditud. - + %1 has been downloaded. %1 names a file. %1 on alla laaditud. - + %1 and %2 other files have been updated. %1 ja %2 teist faili on uuendatud. - + %1 has been updated. %1 names a file. %1 on uuendatud. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 on ümber nimetatud %2 ja %3 muud faili on samuti ümber nimetatud - + %1 has been renamed to %2. %1 and %2 name files. %1 on ümber nimetatud %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 on tõstetud %2 ning %3 muud faili on samuti liigutatud. - + %1 has been moved to %2. %1 on tõstetud %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 ja veel %2 muu faili sünkroniseerimine ebaõnnestus tõrgete tõttu. Vaata üksikasju. - + %1 could not be synced due to an error. See the log for details. %1 sünkroniseerimine ebaõnnestus tõrke tõttu. Lisainfot vaata logist. - + Sync Activity Sünkroniseerimise tegevus - + Could not read system exclude file Süsteemi väljajätmiste faili lugemine ebaõnnestus - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ See võib olla põhjustatud kataloogi ümberseadistusest või on toimunud kõiki Oled kindel, et soovid seda operatsiooni teostada? - + Remove All Files? Kustutada kõik failid? - + Remove all files Kustutada kõik failid - + Keep files Säilita failid @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Faili %1 ei saa salvestada kuna on nime konflikt kohaliku failiga! diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index 467894175..df7073e7d 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -309,89 +309,89 @@ Geratzen den denbora %5 %1 ezin da irakurri. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 eta beste %2 fitxategi ezabatu dira. - + %1 has been removed. %1 names a file. %1 ezabatua izan da. - + %1 and %2 other files have been downloaded. %1 names a file. %1 eta beste %2 fitxategi deskargatu dira. - + %1 has been downloaded. %1 names a file. %1 deskargatu da. - + %1 and %2 other files have been updated. %1 eta beste %2 fitxategi kargatu dira. - + %1 has been updated. %1 names a file. %1 kargatu da. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 %2-(e)ra berrizendatu da eta beste %3 fitxategi berrizendatu dira. - + %1 has been renamed to %2. %1 and %2 name files. %1 %2-(e)ra berrizendatu da. - + %1 has been moved to %2 and %3 other files have been moved. %1 %2-(e)ra berrizendatu da eta beste %3 fitxategi mugitu dira. - + %1 has been moved to %2. %1 %2-(e)ra mugitu da. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Sinkronizazio Jarduerak - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Izan daiteke karpeta isilpean birkonfiguratu delako edo fitxategi guztiak eskuz Ziur zaude eragiketa hau egin nahi duzula? - + Remove All Files? Ezabatu Fitxategi Guztiak? - + Remove all files Ezabatu fitxategi guztiak - + Keep files Mantendu fitxategiak @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index 7d55e82b9..ea83e34c9 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -308,106 +308,106 @@ Total time left %5 %1 قابل خواندن نیست. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 حذف شده است. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. %1 بارگزاری شد. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity فعالیت همگام سازی - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files نگه داشتن فایل ها @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 542cd729d..0dd48f454 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -309,106 +309,106 @@ Aikaa jäljellä yhteensä %5 %1 ei ole luettavissa. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ja %2 muuta tiedostoa on poistettu. - + %1 has been removed. %1 names a file. %1 on poistettu. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ja %2 muuta tiedostoa on ladattu. - + %1 has been downloaded. %1 names a file. %1 on ladattu. - + %1 and %2 other files have been updated. %1 ja %2 muuta tiedostoa on päivitetty. - + %1 has been updated. %1 names a file. %1 on päivitetty. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. %1 on nimetty uudeelleen muotoon %2. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 on siirretty kohteeseen %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Synkronointiaktiviteetti - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? Poistetaanko kaikki tiedostot? - + Remove all files Poista kaikki tiedostot - + Keep files Säilytä tiedostot @@ -1339,12 +1339,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 2b2d2ab74..ff60f2e75 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -309,89 +309,89 @@ Temps restant total %5 %1 ne peut pas être lu. - + %1: %2 %1 : %2 - + %1 and %2 other files have been removed. %1 names a file. %1 et %2 autres fichiers ont été supprimés. - + %1 has been removed. %1 names a file. %1 a été supprimé. - + %1 and %2 other files have been downloaded. %1 names a file. %1 et %2 autres fichiers ont été téléchargés. - + %1 has been downloaded. %1 names a file. %1 a été téléchargé. - + %1 and %2 other files have been updated. %1 et %2 autres fichiers ont été mis à jour. - + %1 has been updated. %1 names a file. %1 a été mis à jour. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 a été renommé en %2 et %3 autres fichiers ont été renommés. - + %1 has been renamed to %2. %1 and %2 name files. %1 a été renommé en %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 a été déplacé vers %2 et %3 autres fichiers ont été déplacés. - + %1 has been moved to %2. %1 a été déplacé vers %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 et %2 autres fichiers n'ont pu être synchronisés pour cause d'erreur. Consultez les logs pour les détails. - + %1 could not be synced due to an error. See the log for details. %1 n'a pu être synchronisé pour cause d'erreur. Consultez les logs pour les détails. - + Sync Activity Activité de synchronisation - + Could not read system exclude file Impossible de lire le fichier d'exclusion du système - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Cela est peut-être du à une reconfiguration silencieuse du dossier, ou parce q Voulez-vous réellement effectuer cette opération ? - + Remove All Files? Supprimer tous les fichiers ? - + Remove all files Supprimer tous les fichiers - + Keep files Garder les fichiers @@ -1347,12 +1347,12 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ?Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Le fichier %1 n'a pas pu être sauvegardé en raison d'un conflit sur le nom du fichier local ! @@ -1559,7 +1559,7 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? %n files are ignored because of previous errors. - %n fichiers ont été ignorés à cause de précédentes erreurs. + %n fichiers ont été ignorés à cause d'erreurs précédentes. %n fichiers ont été ignorés à cause d'erreurs précédentes. @@ -1567,8 +1567,7 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? %n files are partially downloaded. - Les fichiers %n sont partiellement téléchargés. -%n fichiers sont partiellement téléchargés. + %n fichiers sont partiellement téléchargés.%n fichiers sont partiellement téléchargés. diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index cbdf18dfc..773eaa65c 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -309,89 +309,89 @@ Tempo total restante %5 %1 non é lexíbel. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. O ficheiro %1 e outros %2 foron retirados satisfactoriamente. - + %1 has been removed. %1 names a file. %1 foi retirado satisfactoriamente. - + %1 and %2 other files have been downloaded. %1 names a file. O ficheiro %1 e outros %2 foron descargados satisfactoriamente. - + %1 has been downloaded. %1 names a file. %1 foi descargado satisfactoriamente. - + %1 and %2 other files have been updated. O ficheiro %1 e outros %2 foron enviados satisfactoriamente. - + %1 has been updated. %1 names a file. %1 foi enviado satisfactoriamente. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado satisfactoriamente a %2 e outros %3 tamén foron renomeados satisfactoriamente. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado satisfactoriamente a %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido satisfactoriamente a %2 e outros %3 tamén foron movidos satisfactoriamente. - + %1 has been moved to %2. %1 foi movido satisfactoriamente a %2 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 non se puideron sincronizar debido a erros. Vexa os detalles no rexistro. - + %1 could not be synced due to an error. See the log for details. %1 non se puido sincronizar debe a un erro. Vexa os detalles no rexistro. - + Sync Activity Actividade de sincronización - + Could not read system exclude file Non se puido ler o ficheiro de exclusión do sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isto podería ser debido a que o cartafol foi reconfigurado en silencio, ou a qu Confirma que quere realizar esta operación? - + Remove All Files? Retirar todos os ficheiros? - + Remove all files Retirar todos os ficheiros - + Keep files Manter os ficheiros @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! O ficheiro %1 non se gardou debido a unha colisión co nome dun ficheiro local! diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index 258c6eb30..3a33154f8 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -308,106 +308,106 @@ Total time left %5 %1 nem olvasható. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? El legyen távolítva az összes fájl? - + Remove all files Összes fájl eltávolítása - + Keep files Fájlok megtartása @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index 886e41be3..10596996d 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -309,89 +309,89 @@ Totale tempo rimanente %5 %1 non è leggibile. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 altri file sono stati rimossi. - + %1 has been removed. %1 names a file. %1 è stato rimosso. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 altri file sono stati scaricati. - + %1 has been downloaded. %1 names a file. %1 è stato scaricato. - + %1 and %2 other files have been updated. %1 e %2 altri file sono stati aggiornati. - + %1 has been updated. %1 names a file. %1 è stato aggiornato. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 è stato rinominato in %2 e %3 altri file sono stati rinominati. - + %1 has been renamed to %2. %1 and %2 name files. %1 è stato rinominato in %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 è stato spostato in %2 e %3 altri file sono stati spostati. - + %1 has been moved to %2. %1 è stato spostato in %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. 1% e altri %2 file non sono stati sincronizzati a causa di errori. Controlla il log per i dettagli. - + %1 could not be synced due to an error. See the log for details. %1 non può essere sincronizzato a causa di un errore. Controlla il log per i dettagli. - + Sync Activity Sincronizza attività - + Could not read system exclude file Impossibile leggere il file di esclusione di sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Ciò potrebbe accadere in caso di riconfigurazione della cartella o di rimozione Sei sicuro di voler eseguire questa operazione? - + Remove All Files? Vuoi rimuovere tutti i file? - + Remove all files Rimuovi tutti i file - + Keep files Mantieni i file @@ -1346,12 +1346,12 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Il file %1 non può essere scaricato a causa di un conflitto con un file locale. - + The file could not be downloaded completely. - + Il file non può essere scaricato completamente. - + File %1 cannot be saved because of a local file name clash! Il file %1 non può essere salvato a causa di un conflitto con un file locale. diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index 76aee5f04..105d6ee20 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -309,89 +309,89 @@ Total time left %5 %1 は読み込み可能ではありません。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 と他 %2 個のファイルが削除されました。 - + %1 has been removed. %1 names a file. %1 は削除されました。 - + %1 and %2 other files have been downloaded. %1 names a file. %1 と他 %2 個のファイルがダウンロードされました。 - + %1 has been downloaded. %1 names a file. %1 はダウンロードされました。 - + %1 and %2 other files have been updated. %1 と他 %2 個のファイルが更新されました。 - + %1 has been updated. %1 names a file. %1 が更新されました。 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 の名前が %2 に変更され、他 %3 個のファイルの名前が変更されました。 - + %1 has been renamed to %2. %1 and %2 name files. %1 の名前が %2 に変更されました。 - + %1 has been moved to %2 and %3 other files have been moved. %1 が %2 に移され、他 %3 個のファイルが移されました。 - + %1 has been moved to %2. %1 は %2 に移されました。 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. エラーにより、%1 や %2 等のファイルが同期できませんでした。ログで詳細を確認してください。 - + %1 could not be synced due to an error. See the log for details. エラーにより %1 が未同期です。ログで詳細を確認してください。 - + Sync Activity 同期アクティビティ - + Could not read system exclude file システム上の除外ファイルを読み込めません - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? 本当にこの操作を実行しますか? - + Remove All Files? すべてのファイルを削除しますか? - + Remove all files すべてのファイルを削除 - + Keep files ファイルを残す @@ -1345,12 +1345,12 @@ Do you want to connect unencrypted instead (not recommended)? ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! %1 はローカルファイル名が衝突しているため保存できません! diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index ce7f3244c..036151b1a 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -309,89 +309,89 @@ Totaal resterende tijd %5 %1 is niet leesbaar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 en %2 andere bestanden zijn verwijderd. - + %1 has been removed. %1 names a file. %1 is verwijderd. - + %1 and %2 other files have been downloaded. %1 names a file. %1 en %2 andere bestanden zijn gedownloaded. - + %1 has been downloaded. %1 names a file. %1 is gedownloaded. - + %1 and %2 other files have been updated. %1 en %2 andere bestanden zijn bijgewerkt. - + %1 has been updated. %1 names a file. %1 is bijgewerkt. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 is hernoemd naar %2 en %3 andere bestanden zijn ook hernoemd. - + %1 has been renamed to %2. %1 and %2 name files. %1 is hernoemd naar %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 is verplaatst naar %2 en %3 andere bestanden zijn ook verplaatst. - + %1 has been moved to %2. %1 is verplaatst naar %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 en %2 andere bestanden konden niet worden gesynchroniseerd door fouten. Bekijk het log voor details. - + %1 could not be synced due to an error. See the log for details. %1 kon niet worden gesynchroniseerd door een fout. Bekijk het log voor details. - + Sync Activity Synchronisatie-activiteit - + Could not read system exclude file Kon het systeem-uitsluitingsbestand niet lezen - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Dit kan komen doordat de map ongemerkt opnieuw geconfigureerd is of doordat alle Weet u zeker dat u deze bewerking wilt uitvoeren? - + Remove All Files? Verwijder alle bestanden? - + Remove all files Verwijder alle bestanden - + Keep files Bewaar bestanden @@ -1347,12 +1347,12 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Bestand %1 kan niet worden opgeslagen wegens een lokaal bestandsnaam conflict! diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index 4db0911e5..652828713 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -309,89 +309,89 @@ Pozostało czasu %5 %1 jest nie do odczytu. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 inne pliki zostały usunięte. - + %1 has been removed. %1 names a file. %1 został usunięty. - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 pozostałe pliki zostały ściągnięte. - + %1 has been downloaded. %1 names a file. %1 został ściągnięty. - + %1 and %2 other files have been updated. %1 i %2 inne pliki zostały zaktualizowane. - + %1 has been updated. %1 names a file. %1 został uaktualniony. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 zmienił nazwę na %2 i %3 inne pliki mają zmienione nazwy. - + %1 has been renamed to %2. %1 and %2 name files. %1 zmienił nazwę na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 został zmieniony na %2 i %3 inne pliku zostały przeniesione. - + %1 has been moved to %2. %1 został przeniesiony do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 i %2 inne pliki nie mogą zostać zsynchronizowane z powodu błędów. Zobacz szczegóły w logu. - + %1 could not be synced due to an error. See the log for details. %1 nie może zostać zsynchronizowany z powodu błędu. Zobacz szczegóły w logu. - + Sync Activity Aktywności synchronizacji - + Could not read system exclude file Nie można przeczytać pliku wyłączeń - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mogło się tak zdarzyć z powodu niezauważonej rekonfiguracji folderu, lub te Czy jesteś pewien/pewna, że chcesz wykonać tę operację? - + Remove All Files? Usunąć wszystkie pliki? - + Remove all files Usuń wszystkie pliki - + Keep files Pozostaw pliki @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 3fb2d0df4..aab24e881 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -309,89 +309,89 @@ Tempo total restante %5 %1 não é legível. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros ficheiros foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. Foi feito o download de outros ficheiros %1 e %2. - + %1 has been downloaded. %1 names a file. %1 foi transferido. - + %1 and %2 other files have been updated. %1 e %2 outros ficheiros foram atualizados. - + %1 has been updated. %1 names a file. %1 foi atualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado para %2 e %3 outros ficheiros foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido para %2 e %3 outros ficheiros foram movidos. - + %1 has been moved to %2. %1 foi movido para %2 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 outros ficheiros não sincronizaram devido a erros. Verifica o log para mais detalhes. - + %1 could not be synced due to an error. See the log for details. %1 não sincronizou devido a um erro. Verifica o log para mais detalhes. - + Sync Activity Atividade de Sincronização - + Could not read system exclude file Não foi possível ler o ficheiro system exclude - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha "Manter os ficheiros". Se quer apagar os seus dados, escolha "Remover todos os ficheiros". - + Remove All Files? Remover todos os ficheiros? - + Remove all files Remover todos os ficheiros - + Keep files Manter os ficheiros @@ -1344,12 +1344,12 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)?O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Ficheiro %1 não pode ser guardado devido à existência de um ficheiro local com o mesmo nome. diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index be43f3715..be18a1f8f 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -309,89 +309,89 @@ Total de tempo que falta 5% %1 não pode ser lido. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros arquivos foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 outros arquivos foram baixados. - + %1 has been downloaded. %1 names a file. %1 foi baixado. - + %1 and %2 other files have been updated. %1 e %2 outros arquivos foram atualizados. - + %1 has been updated. %1 names a file. %1 foi atualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado para %2 e %3 outros três arquivos foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido para %2 e %3 outros arquivos foram movidos. - + %1 has been moved to %2. %1 foi movido para %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 outros arquivos não puderam ser sincronizados devido a erros. Veja o log para obter detalhes. - + %1 could not be synced due to an error. See the log for details. %1 não pode ser sincronizado devido a um erro. Veja o log para obter detalhes. - + Sync Activity Atividade de Sincronização - + Could not read system exclude file Não foi possível ler o sistema de arquivo de exclusão - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isso pode ser porque a pasta foi silenciosamente reconfigurada, ou todos os arqu Você tem certeza que quer executar esta operação? - + Remove All Files? Deseja Remover Todos os Arquivos? - + Remove all files Remover todos os arquivos - + Keep files Manter arquivos @@ -1345,12 +1345,12 @@ Você deseja se conectar sem criptografia (não recomendado)? O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! - + The file could not be downloaded completely. - + O arquivo não pode ser baixado completamente. - + File %1 cannot be saved because of a local file name clash! O arquivo %1 não pode ser salvo por causa de um confronto com um nome de arquivo local! @@ -1566,8 +1566,7 @@ Você deseja se conectar sem criptografia (não recomendado)? %n files are partially downloaded. %n arquivo está parcialmente baixado. -%n arquivos estão parcialmente baixados. - +%n arquivos forão parcialmente baixados. diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 75e583a88..0036c5b3a 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -198,7 +198,7 @@ Discovering '%1' - + Ищем '%1' @@ -309,89 +309,89 @@ Total time left %5 %1 не читается. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. '%1' и ещё %2 других файлов были удалены. - + %1 has been removed. %1 names a file. '%1' был удалён - + %1 and %2 other files have been downloaded. %1 names a file. '%1' и ещё %2 других файлов были загружены. - + %1 has been downloaded. %1 names a file. %1 был загружен. - + %1 and %2 other files have been updated. %1 и ещё %2 других файла были обновлены. - + %1 has been updated. %1 names a file. %1 был обновлён. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 был переименован в %2 и ещё %3 других файлов были переименованы. - + %1 has been renamed to %2. %1 and %2 name files. %1 был переименован в %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 был перемещён в %2 и ещё %3 других файлов были перемещены. - + %1 has been moved to %2. %1 был перемещён в %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 и %2 другие файлы не могут быть синхронизированы из-за ошибок. Смотрите детали в журнале. - + %1 could not be synced due to an error. See the log for details. %1 не может быть синхронизировано из-за ошибки. Смотрите детали в журнале. - + Sync Activity Журнал синхронизации - + Could not read system exclude file Невозможно прочесть исключенный системный файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Вы уверены, что хотите выполнить операцию? - + Remove All Files? Удалить все файлы? - + Remove all files Удалить все файлы - + Keep files Сохранить файлы @@ -1118,7 +1118,11 @@ It is not advisable to use it. %1 Do you want to connect unencrypted instead (not recommended)? - + Не удаётся установить защищённое подключение к: + +%1 + +Хотите установить незашифрованное подключение (не рекомендуется)? @@ -1343,14 +1347,14 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не может быть загружен из-за локальных конфликтов имен! - + The file could not be downloaded completely. - + Невозможно полностью загрузить файл. - + File %1 cannot be saved because of a local file name clash! - + Файл %1 не может быть сохранён из-за совпадения его имени с локальным файлом! @@ -1549,19 +1553,26 @@ Do you want to connect unencrypted instead (not recommended)? Currently no files are ignored because of previous errors and no downloads are in progress. - + В настоящий момент из-за предыдущих ошибок ни один из файлов не игнорируется и нет ни одной активной загрузки. %n files are ignored because of previous errors. - + %n файл игнорируется из-за предыдущих ошибок. + +%n файла игнорируются из-за предыдущих ошибок. +%n файлов игнорируются из-за предыдущих ошибок. + %n files are partially downloaded. - + %n файл частично загружен. +%n файла частично загружены. +%n файлов частично загружены. + @@ -1579,7 +1590,7 @@ Do you want to connect unencrypted instead (not recommended)? Unchecked folders will be <b>removed</b> from your local file system and will not be synchronized to this computer anymore - + Неотмеченные папки будут <b>удалены</b> из вашей локальной файловой системы и больше не будут синхронизироваться на этом компьютере @@ -2265,7 +2276,7 @@ Do you want to connect unencrypted instead (not recommended)? Discovering '%1' - + Ищем '%1' diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index a1c57230e..6fe825631 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -309,89 +309,89 @@ Celkom zostáva %5 %1 nie je čitateľný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 ďalších súborov bolo zmazaných. - + %1 has been removed. %1 names a file. %1 bol zmazaný. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 ďalších súborov bolo stiahnutých. - + %1 has been downloaded. %1 names a file. %1 bol stiahnutý. - + %1 and %2 other files have been updated. %1 a %2 ďalších súborov bolo aktualizovaných. - + %1 has been updated. %1 names a file. %1 bol aktualizovaný. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 bol premenovaný na %2 a %3 ďalších súborov bolo premenovaných. - + %1 has been renamed to %2. %1 and %2 name files. %1 bol premenovaný na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 bol presunutý do %2 a %3 ďalších súborov bolo presunutých. - + %1 has been moved to %2. %1 bol presunutý do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Aktivita synchronizácie - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto môže byť kvôli tichej rekonfigurácii priečinka, prípadne boli všetk Ste si istý, že chcete uskutočniť danú operáciu? - + Remove All Files? Odstrániť všetky súbory? - + Remove all files Odstrániť všetky súbory - + Keep files Ponechať súbory @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index f7b61484d..17be1789e 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -309,89 +309,89 @@ Skupaj še %5 %1 ni mogoče brati. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. Datoteka %1 in %2 drugih datotek je odstranjenih. - + %1 has been removed. %1 names a file. Datoteka %1 je odstranjena. - + %1 and %2 other files have been downloaded. %1 names a file. Datoteka %1 in %2 drugih datotek je prejetih. - + %1 has been downloaded. %1 names a file. Datoteka %1 je prejeta. - + %1 and %2 other files have been updated. %1 in %2 drugih datotek je posodobljenih. - + %1 has been updated. %1 names a file. Datoteka %1 je posodobljena. - + %1 has been renamed to %2 and %3 other files have been renamed. Datoteka %1 je preimenovana v %2. Preimenovanih je bilo še %3 datotek. - + %1 has been renamed to %2. %1 and %2 name files. Datoteka %1 je preimenovana v %2. - + %1 has been moved to %2 and %3 other files have been moved. Datoteka %1 je premaknjena v %2. Premaknjenih je bilo še %3 datotek. - + %1 has been moved to %2. Datoteka %1 je premaknjena v %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 in %2 drugih datotek ni mogoče uskladiti zaradi napake. Več podrobnosti je zabeleženih v dnevniški datoteki. - + %1 could not be synced due to an error. See the log for details. %1 ni mogoče uskladiti zaradi napake. Več podrobnosti je zabeleženih v dnevniški datoteki. - + Sync Activity Dejavnost usklajevanja - + Could not read system exclude file Ni mogoče prebrati sistemske izločitvene datoteke - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mapa je bila morda odstranjena ali pa so bile nastavitve spremenjene. Ali sta prepričani, da želite izvesti to opravilo? - + Remove All Files? Ali naj bodo odstranjene vse datoteke? - + Remove all files Odstrani vse datoteke - + Keep files Ohrani datoteke @@ -1347,12 +1347,12 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Datoteke %1 ni mogoče prejeti zaradi neskladja z imenom krajevne datoteke! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Datoteke %1 ni mogoče shraniti zaradi neskladja z imenom obstoječe datoteke! diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index c04f7c15f..74f189d99 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -309,89 +309,89 @@ Total tid kvar %5 %1 är inte läsbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 och %2 andra filer har tagits bort. - + %1 has been removed. %1 names a file. %1 har tagits bort. - + %1 and %2 other files have been downloaded. %1 names a file. %1 och %2 andra filer har laddats ner. - + %1 has been downloaded. %1 names a file. %1 har laddats ner. - + %1 and %2 other files have been updated. %1 och %2 andra filer har uppdaterats. - + %1 has been updated. %1 names a file. %1 har uppdaterats. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 har döpts om till %2 och %3 andra filer har bytt namn. - + %1 has been renamed to %2. %1 and %2 name files. %1 har döpts om till %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 har flyttats till %2 och %3 andra filer har tagits bort. - + %1 has been moved to %2. %1 har flyttats till %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 och %2 andra filer kunde inte synkroniseras på grund av ett fel. Kolla loggen för ytterligare detaljer. - + %1 could not be synced due to an error. See the log for details. %1 kunde inte synkroniseras på grund av ett fel. Kolla loggen för ytterligare detaljer. - + Sync Activity Synk aktivitet - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Är du säker på att du vill fortsätta? - + Remove All Files? Ta bort alla filer? - + Remove all files Ta bort alla filer - + Keep files Behåll filer @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index d380f4aff..7dbe86d2a 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -308,106 +308,106 @@ Total time left %5 ไม่สามารถอ่านข้อมูล %1 ได้ - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index a5c24d28c..fde30e421 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -309,89 +309,89 @@ Toplam kalan süre: %5 %1 okunabilir değil. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ve diğer %2 dosya kaldırıldı. - + %1 has been removed. %1 names a file. %1 kaldırıldı. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ve diğer %2 dosya indirildi. - + %1 has been downloaded. %1 names a file. %1 indirildi. - + %1 and %2 other files have been updated. %1 ve diğer %2 dosya güncellendi. - + %1 has been updated. %1 names a file. %1 güncellendi. - + %1 has been renamed to %2 and %3 other files have been renamed. %1, %2 olarak ve diğer %3 dosya adlandırıldı. - + %1 has been renamed to %2. %1 and %2 name files. %1, %2 olarak adlandırıldı. - + %1 has been moved to %2 and %3 other files have been moved. %1, %2 konumuna ve diğer %3 dosya taşındı. - + %1 has been moved to %2. %1, %2 konumuna taşındı. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 ve diğer %2 dosya hatalar nedeniyle eşitlenemedi. Ayrıntılar için günlüğe bakın. - + %1 could not be synced due to an error. See the log for details. %1 bir hata nedeniyle eşitlenemedi. Ayrıntılar için günlüğe bakın. - + Sync Activity Eşitleme Etkinliği - + Could not read system exclude file Sistem hariç tutulma dosyası okunamadı - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Bu, klasörün sessizce yeniden yapılandırılması veya tüm dosyaların el il Bu işlemi gerçekleştirmek istediğinize emin misiniz? - + Remove All Files? Tüm Dosyalar Kaldırılsın mı? - + Remove all files Tüm dosyaları kaldır - + Keep files Dosyaları koru @@ -1347,12 +1347,12 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)?%1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! - + The file could not be downloaded completely. - + Dosya tamamıyla indirilemedi. - + File %1 cannot be saved because of a local file name clash! Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi! diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 41134b733..9676041e9 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -309,89 +309,89 @@ Total time left %5 %1 не читається. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 та %2 інших файлів було видалено. - + %1 has been removed. %1 names a file. %1 видалено. - + %1 and %2 other files have been downloaded. %1 names a file. %1 та %2 інших файлів було завантажено. - + %1 has been downloaded. %1 names a file. %1 завантажено. - + %1 and %2 other files have been updated. %1 та %2 інших файлів було оновлено. - + %1 has been updated. %1 names a file. %1 оновлено. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 перейменовано в %2 та ще %3 інших файлів перейменовано. - + %1 has been renamed to %2. %1 and %2 name files. %1 перейменовано на %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 переміщено до %2 та ще %3 інших файлів. - + %1 has been moved to %2. %1 переміщено в %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 та %2 інші файли не можуть синхронізуватися через помилки. Дивіться деталі в журналі. - + %1 could not be synced due to an error. See the log for details. %1 не може синхронізуватися через помилки. Дивіться деталі в журналі. - + Sync Activity Журнал синхронізації - + Could not read system exclude file Неможливо прочитати виключений системний файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Ви дійсно бажаєте продовжити цю операцію? - + Remove All Files? Видалити усі файли? - + Remove all files Видалити усі файли - + Keep files Зберегти файли @@ -1347,12 +1347,12 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не завантажено, через локальний конфлікт ім'я! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Файл %1 не збережено, через локальний конфлікт ім'я! diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index 747a475df..96cc468ad 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -308,89 +308,89 @@ Total time left %5 %1 不可读。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 已移除。 - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. %1 已下载。 - + %1 and %2 other files have been updated. %1 和 %2 个其它文件已更新。 - + %1 has been updated. %1 names a file. %1 已更新。 - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 已移动至 %2。 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity 同步活动 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? 你确定执行该操作吗? - + Remove All Files? 删除所有文件? - + Remove all files 删除所有文件 - + Keep files 保持所有文件 @@ -1340,12 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 00edbaebb..346f8858a 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -308,106 +308,106 @@ Total time left %5 %1 是不可讀的 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity 同步啟用 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? 移除所有檔案? - + Remove all files 移除所有檔案 - + Keep files 保留檔案 @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! From 23f72ecf7bef7500c9b6131fe8723e6084510184 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sun, 23 Nov 2014 01:25:22 -0500 Subject: [PATCH 58/87] [tx-robot] updated from transifex --- translations/mirall_nl.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 036151b1a..cafca3331 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -1349,7 +1349,7 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? The file could not be downloaded completely. - + Het bestand kon niet volledig worden gedownload. From 7f520a6f286101f615344592a976d5b897b2df8b Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Mon, 24 Nov 2014 01:25:22 -0500 Subject: [PATCH 59/87] [tx-robot] updated from transifex --- translations/mirall_sk.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 6fe825631..5bf65b2bc 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -2320,7 +2320,7 @@ Do you want to connect unencrypted instead (not recommended)? Sync everything from server - + Synchronizovať všetko zo servera From 79c37f9fe4823d59edcdfd771ad72dff66c2253b Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Mon, 24 Nov 2014 11:33:42 +0100 Subject: [PATCH 60/87] Poll Jobs: Properly use DB index Why do we sometimes use 0-based, sometimes 1-based indices? --- src/libsync/syncjournaldb.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/libsync/syncjournaldb.cpp b/src/libsync/syncjournaldb.cpp index d78367481..357c9ff37 100644 --- a/src/libsync/syncjournaldb.cpp +++ b/src/libsync/syncjournaldb.cpp @@ -1164,8 +1164,9 @@ void SyncJournalDb::setPollInfo(const SyncJournalDb::PollInfo& info) } if (info._url.isEmpty()) { + qDebug() << "Deleting Poll job" << info._file; SqlQuery query("DELETE FROM poll WHERE path=?", _db); - query.bindValue(0, info._file); + query.bindValue(1, info._file); if( !query.exec() ) { qDebug() << "SQL error in setPollInfo: "<< query.error(); } else { @@ -1173,9 +1174,9 @@ void SyncJournalDb::setPollInfo(const SyncJournalDb::PollInfo& info) } } else { SqlQuery query("INSERT OR REPLACE INTO poll (path, modtime, pollpath) VALUES( ? , ? , ? )", _db); - query.bindValue(0, info._file); - query.bindValue(1, QString::number(info._modtime)); - query.bindValue(2, info._url); + query.bindValue(1, info._file); + query.bindValue(2, QString::number(info._modtime)); + query.bindValue(3, info._url); if( !query.exec() ) { qDebug() << "SQL error in setPollInfo: "<< query.error(); } else { From c0de20dda0470a10e0121ad39e1cf0f16e6b7d7a Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 24 Nov 2014 11:58:29 +0100 Subject: [PATCH 61/87] UploadDevice: reduce debug verbosity --- src/libsync/propagateupload.cpp | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index 5f58835f5..bcb043cd7 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -200,7 +200,6 @@ UploadDevice::UploadDevice(QIODevice *file, qint64 start, qint64 size, Bandwidt _readWithProgress(0), _bandwidthLimited(false), _choked(false) { - qDebug() << Q_FUNC_INFO << start << size << chunkSize(); _bandwidthManager->registerUploadDevice(this); _file = QPointer(file); } @@ -217,7 +216,7 @@ qint64 UploadDevice::writeData(const char* , qint64 ) { qint64 UploadDevice::readData(char* data, qint64 maxlen) { if (_file.isNull()) { - qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + qDebug() << "Upload file object deleted during upload"; close(); return -1; } @@ -225,7 +224,6 @@ qint64 UploadDevice::readData(char* data, qint64 maxlen) { //qDebug() << Q_FUNC_INFO << maxlen << _read << _size << _bandwidthQuota; if (_size - _read <= 0) { // at end - qDebug() << Q_FUNC_INFO << _read << _size << _bandwidthQuota << "at end"; _bandwidthManager->unregisterUploadDevice(this); return -1; } @@ -234,28 +232,21 @@ qint64 UploadDevice::readData(char* data, qint64 maxlen) { return 0; } if (isChoked()) { - qDebug() << Q_FUNC_INFO << this << "Upload Choked"; return 0; } if (isBandwidthLimited()) { - qDebug() << Q_FUNC_INFO << "BW LIMITED" << maxlen << _bandwidthQuota - << qMin(maxlen, _bandwidthQuota); maxlen = qMin(maxlen, _bandwidthQuota); if (maxlen <= 0) { // no quota - qDebug() << Q_FUNC_INFO << "no quota"; + qDebug() << "no quota"; return 0; } _bandwidthQuota -= maxlen; } - qDebug() << Q_FUNC_INFO << "reading limited=" << isBandwidthLimited() - << "maxlen=" << maxlen << "quota=" << _bandwidthQuota; qint64 ret = _file.data()->read(data, maxlen); - //qDebug() << Q_FUNC_INFO << "returning " << ret; if (ret < 0) return -1; _read += ret; - //qDebug() << Q_FUNC_INFO << "returning2 " << ret << _read; return ret; } @@ -271,7 +262,7 @@ void UploadDevice::slotJobUploadProgress(qint64 sent, qint64 t) bool UploadDevice::atEnd() const { if (_file.isNull()) { - qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + qDebug() << "Upload file object deleted during upload"; return true; } // qDebug() << this << Q_FUNC_INFO << _read << chunkSize() @@ -299,20 +290,17 @@ bool UploadDevice::isSequential() const{ bool UploadDevice::seek ( qint64 pos ) { if (_file.isNull()) { - qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + qDebug() << "Upload file object deleted during upload"; close(); return false; } - qDebug() << this << Q_FUNC_INFO << pos << _read; _read = pos; return _file.data()->seek(pos + _start); } void UploadDevice::giveBandwidthQuota(qint64 bwq) { -// qDebug() << Q_FUNC_INFO << bwq; if (!atEnd()) { _bandwidthQuota = bwq; -// qDebug() << Q_FUNC_INFO << bwq << "emitting readyRead()" << _read << _readWithProgress; QMetaObject::invokeMethod(this, "readyRead", Qt::QueuedConnection); // tell QNAM that we have quota } } From d76e3c0488aa43cbc24ee28ed15eea74bf7fd3bb Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 24 Nov 2014 11:58:51 +0100 Subject: [PATCH 62/87] Parallel chunk upload: abort all chunks if one of them errors out --- src/libsync/propagateupload.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index bcb043cd7..a59ce42a5 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -445,6 +445,13 @@ void PropagateUploadFileQNAM::slotPutFinished() _propagator->_anotherSyncNeeded = true; } + foreach (auto job, _jobs) { + if (job->reply()) { + job->reply()->abort(); + } + } + + _finished = true; done(classifyError(err, _item._httpErrorCode), errorString); return; } @@ -455,6 +462,7 @@ void PropagateUploadFileQNAM::slotPutFinished() _finished = true; QString path = QString::fromUtf8(job->reply()->rawHeader("OC-Finish-Poll")); if (path.isEmpty()) { + _finished = true; done(SyncFileItem::NormalError, tr("Poll URL missing")); return; } @@ -576,7 +584,7 @@ void PropagateUploadFileQNAM::finalize(const SyncFileItem ©) _propagator->_journal->setUploadInfo(_item._file, SyncJournalDb::UploadInfo()); _propagator->_journal->commit("upload file start"); - qDebug() << Q_FUNC_INFO << "msec=" <<_duration.elapsed(); + _finished = true; done(SyncFileItem::Success); } @@ -618,6 +626,7 @@ void PropagateUploadFileQNAM::slotPollFinished() Q_ASSERT(job); if (job->_item._status != SyncFileItem::Success) { + _finished = true; done(job->_item._status, job->_item._errorString); return; } From 734db6f932946510f41d52bfa43f69ce3e063090 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 24 Nov 2014 13:33:13 +0100 Subject: [PATCH 63/87] propagate Upload: Let the poll job count for a job In order to avoid that there are many concurrent poll jobs that takes all the QNAM channel and causes timeouts of queued jobs --- src/libsync/propagateupload.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index a59ce42a5..4d37878ff 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -617,6 +617,7 @@ void PropagateUploadFileQNAM::startPollJob(const QString& path) info._modtime = _item._modtime; _propagator->_journal->setPollInfo(info); _propagator->_journal->commit("add poll info"); + _propagator->_activeJobs++; job->start(); } @@ -625,6 +626,8 @@ void PropagateUploadFileQNAM::slotPollFinished() PollJob *job = qobject_cast(sender()); Q_ASSERT(job); + _propagator->_activeJobs--; + if (job->_item._status != SyncFileItem::Success) { _finished = true; done(job->_item._status, job->_item._errorString); From a337564864a1b213b6a10c731d9594d64c6de0ee Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 24 Nov 2014 14:53:37 +0100 Subject: [PATCH 64/87] shell_integration/windows/OCShellExtensions/OCUtilTest: remove We do not need it anymore --- .../OCUtilTest/OCUtilTest.cpp | 37 ------- .../OCUtilTest/OCUtilTest.filters | 33 ------- .../OCUtilTest/OCUtilTest.vcxproj | 97 ------------------- .../OCShellExtensions/OCUtilTest/ReadMe.txt | 40 -------- .../OCShellExtensions/OCUtilTest/stdafx.cpp | 8 -- .../OCShellExtensions/OCUtilTest/stdafx.h | 15 --- .../OCShellExtensions/OCUtilTest/targetver.h | 8 -- 7 files changed, 238 deletions(-) delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.cpp delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.filters delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.vcxproj delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/ReadMe.txt delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.cpp delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.h delete mode 100644 shell_integration/windows/OCShellExtensions/OCUtilTest/targetver.h diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.cpp b/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.cpp deleted file mode 100644 index 179f8334a..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.cpp +++ /dev/null @@ -1,37 +0,0 @@ -// ConsoleApplication1.cpp : Defines the entry point for the console application. -// - -#include "stdafx.h" - -#include -#include -#include - -#include "RemotePathChecker.h" -#include "StringUtil.h" - -using namespace std; - -int _tmain(int argc, _TCHAR* argv[]) -{ - RemotePathChecker checker(33001); - - vector paths; - - wstring test1(L"C:\\Users\\owncloud\\ownCloud\\wizard2.png"); - wstring test2(L"C:\\Users\\owncloud\\ownCloud\\wizard3.png"); - wstring test3(L"C:\\Users\\owncloud\\ownCloud\\HAMMANET.png"); - paths.push_back(test1); - paths.push_back(test2); - paths.push_back(test3); - -// wstring test3 = StringUtil::toUtf16(StringUtil::toUtf8(test1.c_str())); - - vector::iterator it; - for (it = paths.begin(); it != paths.end(); ++it) { - bool monitored = checker.IsMonitoredPath(it->c_str(), false); - wcout << *it << " " << monitored << " with value " << checker.GetPathType() << endl; - } - return 0; -} - diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.filters b/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.filters deleted file mode 100644 index 2507d8e20..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.filters +++ /dev/null @@ -1,33 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - - - - Header Files - - - Header Files - - - - - Source Files - - - Source Files - - - \ No newline at end of file diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.vcxproj b/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.vcxproj deleted file mode 100644 index e4c35a3b2..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/OCUtilTest.vcxproj +++ /dev/null @@ -1,97 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - - {A81E3DAE-8FE7-4BD0-82F9-939B2D59D033} - Win32Proj - OCUtilTest - OCUtilTest - - - - Application - true - v120 - Unicode - - - Application - false - v120 - true - Unicode - - - - - - - - - - - - - true - $(SolutionDir)$(Configuration)\$(Platform)\ - - - false - - - - Use - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) - true - ..\OCUtil - - - Console - true - ..\$(Configuration)\$(Platform); - OCUtil_x86.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - - - Level3 - Use - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) - true - - - Console - true - true - true - - - - - - - - - - Create - Create - - - - - - \ No newline at end of file diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/ReadMe.txt b/shell_integration/windows/OCShellExtensions/OCUtilTest/ReadMe.txt deleted file mode 100644 index 4cb8a2f4b..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/ReadMe.txt +++ /dev/null @@ -1,40 +0,0 @@ -======================================================================== - CONSOLE APPLICATION : ConsoleApplication1 Project Overview -======================================================================== - -AppWizard has created this ConsoleApplication1 application for you. - -This file contains a summary of what you will find in each of the files that -make up your ConsoleApplication1 application. - - -ConsoleApplication1.vcxproj - This is the main project file for VC++ projects generated using an Application Wizard. - It contains information about the version of Visual C++ that generated the file, and - information about the platforms, configurations, and project features selected with the - Application Wizard. - -ConsoleApplication1.vcxproj.filters - This is the filters file for VC++ projects generated using an Application Wizard. - It contains information about the association between the files in your project - and the filters. This association is used in the IDE to show grouping of files with - similar extensions under a specific node (for e.g. ".cpp" files are associated with the - "Source Files" filter). - -ConsoleApplication1.cpp - This is the main application source file. - -///////////////////////////////////////////////////////////////////////////// -Other standard files: - -StdAfx.h, StdAfx.cpp - These files are used to build a precompiled header (PCH) file - named ConsoleApplication1.pch and a precompiled types file named StdAfx.obj. - -///////////////////////////////////////////////////////////////////////////// -Other notes: - -AppWizard uses "TODO:" comments to indicate parts of the source code you -should add to or customize. - -///////////////////////////////////////////////////////////////////////////// diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.cpp b/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.cpp deleted file mode 100644 index f1d63e0b4..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.cpp +++ /dev/null @@ -1,8 +0,0 @@ -// stdafx.cpp : source file that includes just the standard includes -// ConsoleApplication1.pch will be the pre-compiled header -// stdafx.obj will contain the pre-compiled type information - -#include "stdafx.h" - -// TODO: reference any additional headers you need in STDAFX.H -// and not in this file diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.h b/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.h deleted file mode 100644 index b005a839d..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/stdafx.h +++ /dev/null @@ -1,15 +0,0 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, but -// are changed infrequently -// - -#pragma once - -#include "targetver.h" - -#include -#include - - - -// TODO: reference additional headers your program requires here diff --git a/shell_integration/windows/OCShellExtensions/OCUtilTest/targetver.h b/shell_integration/windows/OCShellExtensions/OCUtilTest/targetver.h deleted file mode 100644 index 87c0086de..000000000 --- a/shell_integration/windows/OCShellExtensions/OCUtilTest/targetver.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -// Including SDKDDKVer.h defines the highest available Windows platform. - -// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and -// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. - -#include From 12203461f068510b42b462750d6cea09c31afdde Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 24 Nov 2014 15:06:08 +0100 Subject: [PATCH 65/87] Import the dolphin plugin --- .gitignore | 1 - .../dolphin/0001-KOverlayIconPlugin.patch | 256 ++++++++++++++++++ shell_integration/dolphin/CMakeLists.txt | 17 ++ shell_integration/dolphin/README | 18 ++ .../dolphin/ownclouddolphinplugin.cpp | 131 +++++++++ .../dolphin/ownclouddolphinplugin.desktop | 6 + 6 files changed, 428 insertions(+), 1 deletion(-) create mode 100644 shell_integration/dolphin/0001-KOverlayIconPlugin.patch create mode 100644 shell_integration/dolphin/CMakeLists.txt create mode 100644 shell_integration/dolphin/README create mode 100644 shell_integration/dolphin/ownclouddolphinplugin.cpp create mode 100644 shell_integration/dolphin/ownclouddolphinplugin.desktop diff --git a/.gitignore b/.gitignore index 19fe61e82..c180c90cb 100644 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,6 @@ *build*/ *flymake* CMakeLists.txt.user* -*.patch *~ *.autosave doc/_build/* diff --git a/shell_integration/dolphin/0001-KOverlayIconPlugin.patch b/shell_integration/dolphin/0001-KOverlayIconPlugin.patch new file mode 100644 index 000000000..25f9ceeea --- /dev/null +++ b/shell_integration/dolphin/0001-KOverlayIconPlugin.patch @@ -0,0 +1,256 @@ +From 3a26dc77f8e988ea99b23c4d5a2c831ecc31c920 Mon Sep 17 00:00:00 2001 +From: Olivier Goffart +Date: Thu, 17 Jul 2014 13:26:56 +0200 +Subject: [PATCH] WIP: add KOverlayIconPlugin + +--- + .../src/kitemviews/kfileitemmodelrolesupdater.cpp | 35 ++++++++++++- + .../src/kitemviews/kfileitemmodelrolesupdater.h | 9 ++++ + lib/konq/CMakeLists.txt | 4 +- + lib/konq/koverlayiconplugin.cpp | 30 ++++++++++++ + lib/konq/koverlayiconplugin.desktop | 4 ++ + lib/konq/koverlayiconplugin.h | 57 ++++++++++++++++++++++ + 6 files changed, 137 insertions(+), 2 deletions(-) + create mode 100644 lib/konq/koverlayiconplugin.cpp + create mode 100644 lib/konq/koverlayiconplugin.desktop + create mode 100644 lib/konq/koverlayiconplugin.h + +diff --git a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp +index 0865d40..840a65d 100644 +--- a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp ++++ b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp +@@ -28,9 +28,11 @@ + #include + #include + #include ++#include + + #include "private/kpixmapmodifier.h" + #include "private/kdirectorycontentscounter.h" ++#include + + #include + #include +@@ -129,6 +131,17 @@ KFileItemModelRolesUpdater::KFileItemModelRolesUpdater(KFileItemModel* model, QO + m_directoryContentsCounter = new KDirectoryContentsCounter(m_model, this); + connect(m_directoryContentsCounter, SIGNAL(result(QString,int)), + this, SLOT(slotDirectoryContentsCountReceived(QString,int))); ++ ++ ++ const KService::List pluginServices = KServiceTypeTrader::self()->query("KOverlayIconPlugin"); ++ ++ for (KService::List::ConstIterator it = pluginServices.constBegin(); it != pluginServices.constEnd(); ++it) { ++ KOverlayIconPlugin* plugin = (*it)->createInstance(this); ++ if (plugin) { ++ m_overlayIconsPlugin.append(plugin); ++ connect(plugin, SIGNAL(overlaysChanged(KUrl,QStringList)), this, SLOT(slotOverlaysChanged(KUrl,QStringList))); ++ } ++ } + } + + KFileItemModelRolesUpdater::~KFileItemModelRolesUpdater() +@@ -1075,7 +1088,11 @@ QHash KFileItemModelRolesUpdater::rolesData(const KFileIte + data.insert("type", item.mimeComment()); + } + +- data.insert("iconOverlays", item.overlays()); ++ QStringList overlays = item.overlays(); ++ foreach(KOverlayIconPlugin *it, m_overlayIconsPlugin) { ++ overlays.append(it->getOverlays(item)); ++ } ++ data.insert("iconOverlays", overlays); + + #ifdef HAVE_BALOO + if (m_balooFileMonitor) { +@@ -1086,6 +1103,22 @@ QHash KFileItemModelRolesUpdater::rolesData(const KFileIte + return data; + } + ++void KFileItemModelRolesUpdater::slotOverlaysChanged(const KUrl& url, const QStringList &) ++{ ++ KFileItem item = m_model->fileItem(url); ++ if (item.isNull()) ++ return; ++ int index = m_model->index(item); ++ QHash data = m_model->data(index); ++ QStringList overlays = item.overlays(); ++ foreach(KOverlayIconPlugin *it, m_overlayIconsPlugin) { ++ overlays.append(it->getOverlays(item)); ++ } ++ data.insert("iconOverlays", overlays); ++ m_model->setData(index, data); ++} ++ ++ + void KFileItemModelRolesUpdater::updateAllPreviews() + { + if (m_state == Paused) { +diff --git a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h +index a9e979a..6d3add0 100644 +--- a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h ++++ b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h +@@ -32,6 +32,7 @@ + #include + #include + ++class KOverlayIconPlugin; + class KDirectoryContentsCounter; + class KFileItemModel; + class KJob; +@@ -180,6 +181,12 @@ private slots: + void slotPreviewJobFinished(); + + /** ++ * Is invoked when one of the KOverlayIconPlugin emit the signal that an overlay has changed ++ */ ++ void slotOverlaysChanged(const KUrl&, const QStringList&); ++ ++ ++ /** + * Resolves the sort role of the next item in m_pendingSortRole, applies it + * to the model, and invokes itself if there are any pending items left. If + * that is not the case, \a startUpdating() is called. +@@ -331,6 +338,8 @@ private: + + KDirectoryContentsCounter* m_directoryContentsCounter; + ++ QList m_overlayIconsPlugin; ++ + #ifdef HAVE_BALOO + Baloo::FileMonitor* m_balooFileMonitor; + #endif +diff --git a/lib/konq/CMakeLists.txt b/lib/konq/CMakeLists.txt +index 8ecbfa9..7381caf 100644 +--- a/lib/konq/CMakeLists.txt ++++ b/lib/konq/CMakeLists.txt +@@ -22,6 +22,7 @@ set(konq_LIB_SRCS + konq_historyprovider.cpp + kversioncontrolplugin.cpp # used by dolphin and its version control plugins (deprecated) + kversioncontrolplugin2.cpp # used by dolphin and its version control plugins ++ koverlayiconplugin.cpp + + konq_nameandurlinputdialog.cpp # deprecated (functionality has moved to kdelibs) + knewmenu.cpp # deprecated (functionality has moved to kdelibs) +@@ -67,8 +68,9 @@ install( FILES + konq_fileitemcapabilities.h + kversioncontrolplugin.h + kversioncontrolplugin2.h ++ koverlayiconplugin.h + konq_historyprovider.h + konq_historyentry.h + DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel + ) +-install( FILES konqpopupmenuplugin.desktop konqdndpopupmenuplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) ++install( FILES konqpopupmenuplugin.desktop konqdndpopupmenuplugin.desktop koverlayiconplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) +diff --git a/lib/konq/koverlayiconplugin.cpp b/lib/konq/koverlayiconplugin.cpp +new file mode 100644 +index 0000000..6125040 +--- /dev/null ++++ b/lib/konq/koverlayiconplugin.cpp +@@ -0,0 +1,30 @@ ++/***************************************************************************** ++ * Copyright (C) 2014 by Olivier Goffart * ++ * * ++ * This library is free software; you can redistribute it and/or * ++ * modify it under the terms of the GNU Library General Public * ++ * License version 2 as published by the Free Software Foundation. * ++ * * ++ * This library is distributed in the hope that it will be useful, * ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of * ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * ++ * Library General Public License for more details. * ++ * * ++ * You should have received a copy of the GNU Library General Public License * ++ * along with this library; see the file COPYING.LIB. If not, write to * ++ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * ++ * Boston, MA 02110-1301, USA. * ++ *****************************************************************************/ ++ ++#include "koverlayiconplugin.h" ++#include ++ ++KOverlayIconPlugin::KOverlayIconPlugin(QObject* parent) : QObject(parent) ++{ ++} ++ ++KOverlayIconPlugin::~KOverlayIconPlugin() ++{ ++} ++ ++#include "koverlayiconplugin.moc" +diff --git a/lib/konq/koverlayiconplugin.desktop b/lib/konq/koverlayiconplugin.desktop +new file mode 100644 +index 0000000..65a1170 +--- /dev/null ++++ b/lib/konq/koverlayiconplugin.desktop +@@ -0,0 +1,4 @@ ++[Desktop Entry] ++Type=ServiceType ++X-KDE-ServiceType=KOverlayIconPlugin ++Comment=Plugin to add overlay icons in Dolphin +diff --git a/lib/konq/koverlayiconplugin.h b/lib/konq/koverlayiconplugin.h +new file mode 100644 +index 0000000..bcdf31b +--- /dev/null ++++ b/lib/konq/koverlayiconplugin.h +@@ -0,0 +1,57 @@ ++/***************************************************************************** ++ * Copyright (C) 2014 by Olivier Goffart * ++ * * ++ * This library is free software; you can redistribute it and/or * ++ * modify it under the terms of the GNU Library General Public * ++ * License version 2 as published by the Free Software Foundation. * ++ * * ++ * This library is distributed in the hope that it will be useful, * ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of * ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * ++ * Library General Public License for more details. * ++ * * ++ * You should have received a copy of the GNU Library General Public License * ++ * along with this library; see the file COPYING.LIB. If not, write to * ++ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * ++ * Boston, MA 02110-1301, USA. * ++ *****************************************************************************/ ++ ++ ++#ifndef OverlayIconPlugin_H ++#define OverlayIconPlugin_H ++ ++#include ++#include ++ ++class KUrl; ++class KFileItem; ++ ++/** ++ * @brief Base class for overlay icon plugins. ++ * ++ * Enables the file manager to show custom overlay icons on files. ++ * ++ * To write a custom plugin you need to create a .desktop file for your plugin with ++ * KDE-ServiceTypes=KOverlayIconPlugin ++ */ ++class LIBKONQ_EXPORT KOverlayIconPlugin : public QObject { ++ Q_OBJECT ++ void *d; ++public: ++ explicit KOverlayIconPlugin(QObject *parent = 0); ++ ~KOverlayIconPlugin(); ++ ++ /** ++ * Returns a list of overlay pixmap to add to a file ++ * This can be a path to an icon, or the icon name ++ */ ++ virtual QStringList getOverlays(const KFileItem &item) = 0; ++signals: ++ ++ /** ++ * Emit this signal when the list of overlay icon changed for a given URL ++ */ ++ void overlaysChanged(const KUrl &url, const QStringList &overlays); ++}; ++ ++#endif +-- +2.1.3 + diff --git a/shell_integration/dolphin/CMakeLists.txt b/shell_integration/dolphin/CMakeLists.txt new file mode 100644 index 000000000..0d70854ab --- /dev/null +++ b/shell_integration/dolphin/CMakeLists.txt @@ -0,0 +1,17 @@ +cmake_minimum_required(VERSION 2.6) +project(dolphin-owncloud) +find_package(KDE4 REQUIRED) +include(KDE4Defaults) +include(MacroLibrary) +find_package(LibKonq REQUIRED) + +add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) +add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS) +include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ) +include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${LIBKONQ_INCLUDE_DIR} ) + +kde4_add_plugin(ownclouddolphinplugin ownclouddolphinplugin.cpp) + +target_link_libraries(ownclouddolphinplugin ${KDE4_KIO_LIBS} ${LIBKONQ_LIBRARY}) +install(FILES ownclouddolphinplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR}) +install(TARGETS ownclouddolphinplugin DESTINATION ${PLUGIN_INSTALL_DIR}) diff --git a/shell_integration/dolphin/README b/shell_integration/dolphin/README new file mode 100644 index 000000000..715adcbbf --- /dev/null +++ b/shell_integration/dolphin/README @@ -0,0 +1,18 @@ + + +- The patch 0001-KOverlayIconPlugin.patch should be applied to kde-baseapps git repository +(It should applies to both KDE/4.14 or Applications/14.12 branches) + +- Recompile and install dolphin + +- Build and install the plugin + +- After installing, run + kdeinit4 --noincremental + +- To test taht the plugin is well installed + ktraderclient --servicetype KOverlayIconPlugin + It should show the Owncloud plugin + +- restart dolphin (make sure to kill all instances) + diff --git a/shell_integration/dolphin/ownclouddolphinplugin.cpp b/shell_integration/dolphin/ownclouddolphinplugin.cpp new file mode 100644 index 000000000..def66573d --- /dev/null +++ b/shell_integration/dolphin/ownclouddolphinplugin.cpp @@ -0,0 +1,131 @@ +/****************************************************************************** + * Copyright (C) 2014 by Olivier Goffart +#include +#include +#include +#include +#include + + +class OwncloudDolphinPlugin : public KOverlayIconPlugin +{ + Q_OBJECT + QLocalSocket m_socket; + typedef QHash StatusMap; + StatusMap m_status; + QByteArray m_line; + +public: + explicit OwncloudDolphinPlugin(QObject* parent, const QList&) : KOverlayIconPlugin(parent) { + connect(&m_socket, SIGNAL(readyRead()), this, SLOT(readyRead())); + tryConnect(); + } + + virtual QStringList getOverlays(const KFileItem& item) { + KUrl url = item.url(); + if (!url.isLocalFile()) + return QStringList(); + const QByteArray localFile = url.toLocalFile().toUtf8(); + kDebug() << localFile; + + tryConnect(); + if (m_socket.state() == QLocalSocket::ConnectingState) { + if (!m_socket.waitForConnected(100)) { + kWarning() << "not connected" << m_socket.errorString(); + } + } + if (m_socket.state() == QLocalSocket::ConnectedState) { + m_socket.write("RETRIEVE_FILE_STATUS:"); + m_socket.write(localFile); + m_socket.write("\n"); + } + + StatusMap::iterator it = m_status.find(localFile); + if (it != m_status.constEnd()) { + return overlaysForString(*it); + } + return QStringList(); + } + + + +private: + void tryConnect() { + if (m_socket.state() != QLocalSocket::UnconnectedState) + return; + QString runtimeDir = QFile::decodeName(qgetenv("XDG_RUNTIME_DIR")); + QString socketPath = runtimeDir + "/" + "ownCloud" + "/socket"; + m_socket.connectToServer(socketPath); + } + + QStringList overlaysForString(const QByteArray status) { + QStringList r; + if (status.startsWith("NOP")) + return r; + + if (status.startsWith("OK")) + r << "dialog-ok"; + if (status.startsWith("SYNC") || status.startsWith("NEW")) + r << "view-refresh"; + + if (status.contains("+SWM")) + r << "document-share"; + + kDebug() << status << r; + return r; + } + +private slots: + void readyRead() { + while (m_socket.bytesAvailable()) { + m_line += m_socket.readLine(); + if (!m_line.endsWith("\n")) + continue; + QByteArray line; + qSwap(line, m_line); + line.chop(1); + kDebug() << "got line " << line; + if (line.isEmpty()) + continue; + QList tokens = line.split(':'); + if (tokens.count() != 3) + continue; + if (tokens[0] != "STATUS" && tokens[0] != "BROADCAST") + continue; + if (tokens[2].isEmpty()) + continue; + + const QByteArray name = tokens[2]; + QByteArray &status = m_status[name]; // reference to the item in the hash + if (status == tokens[1]) + continue; + status = tokens[1]; + + emit this->overlaysChanged(KUrl::fromLocalFile(QString::fromUtf8(name)), overlaysForString(status)); + } + } +}; + +K_PLUGIN_FACTORY(OwncloudDolphinPluginFactory, registerPlugin();) +K_EXPORT_PLUGIN(OwncloudDolphinPluginFactory("ownclouddolhpinplugin")) + + +#include "ownclouddolphinplugin.moc" diff --git a/shell_integration/dolphin/ownclouddolphinplugin.desktop b/shell_integration/dolphin/ownclouddolphinplugin.desktop new file mode 100644 index 000000000..07fc63f33 --- /dev/null +++ b/shell_integration/dolphin/ownclouddolphinplugin.desktop @@ -0,0 +1,6 @@ +[Desktop Entry] +Type=Service +Name=Owncloud +X-KDE-ServiceTypes=KOverlayIconPlugin +MimeType=text/plain; +X-KDE-Library=ownclouddolphinplugin From 3e34d000f238ac717eb2c486ecd6830e3b3079fa Mon Sep 17 00:00:00 2001 From: Klaas Freitag Date: Tue, 25 Nov 2014 10:20:51 +0100 Subject: [PATCH 66/87] Propagator: Add the chunk size to PUT requests. --- csync/src/httpbf/src/httpbf.c | 2 ++ src/mirall/propagator_qnam.cpp | 1 + 2 files changed, 3 insertions(+) diff --git a/csync/src/httpbf/src/httpbf.c b/csync/src/httpbf/src/httpbf.c index 40080240e..3c5f2107d 100644 --- a/csync/src/httpbf/src/httpbf.c +++ b/csync/src/httpbf/src/httpbf.c @@ -503,6 +503,8 @@ Hbf_State hbf_transfer( ne_session *session, hbf_transfer_t *transfer, const cha if( transfer->block_cnt > 1 ) { ne_add_request_header(req, "OC-Chunked", "1"); + snprintf(buf, sizeof(buf), "%"PRId64, transfer->threshold); + ne_add_request_header(req, "OC-Chunk-Size", buf); } ne_add_request_header( req, "Content-Type", "application/octet-stream"); diff --git a/src/mirall/propagator_qnam.cpp b/src/mirall/propagator_qnam.cpp index 674f8163e..ca9d4eb30 100644 --- a/src/mirall/propagator_qnam.cpp +++ b/src/mirall/propagator_qnam.cpp @@ -228,6 +228,7 @@ void PropagateUploadFileQNAM::startNextChunk() quint64 fileSize = _item._size; QMap headers; headers["OC-Total-Length"] = QByteArray::number(fileSize); + headers["OC-Chunk-Size"]= QByteArray::number(quint64(chunkSize())); headers["Content-Type"] = "application/octet-stream"; headers["X-OC-Mtime"] = QByteArray::number(qint64(_item._modtime)); if (!_item._etag.isEmpty() && _item._etag != "empty_etag" && From 13ec5da84e9d6c4ed9466142dbce8e295ebb4127 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 25 Nov 2014 15:08:32 +0100 Subject: [PATCH 67/87] neon jobs: Start them in their thread. --- src/libsync/owncloudpropagator.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libsync/owncloudpropagator.h b/src/libsync/owncloudpropagator.h index a0cfeb1c1..67dc455c1 100644 --- a/src/libsync/owncloudpropagator.h +++ b/src/libsync/owncloudpropagator.h @@ -205,9 +205,10 @@ public: return false; } _state = Running; - start(); + QMetaObject::invokeMethod(this, "start"); // We could be in a different thread (neon jobs) return true; } +public slots: virtual void start() = 0; }; From 9a8c86879309ce30212dbb4192c5b4085449db7e Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 25 Nov 2014 15:33:40 +0100 Subject: [PATCH 68/87] Propagator upload: Remove debug output --- src/libsync/propagatedownload.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libsync/propagatedownload.h b/src/libsync/propagatedownload.h index a74ba68f7..e98be4b40 100644 --- a/src/libsync/propagatedownload.h +++ b/src/libsync/propagatedownload.h @@ -54,9 +54,9 @@ public: virtual void start() Q_DECL_OVERRIDE; virtual bool finished() Q_DECL_OVERRIDE { - qDebug() << Q_FUNC_INFO << reply()->bytesAvailable() << _hasEmittedFinishedSignal; +// qDebug() << Q_FUNC_INFO << reply()->bytesAvailable() << _hasEmittedFinishedSignal; if (reply()->bytesAvailable()) { - qDebug() << Q_FUNC_INFO << "Not all read yet because of bandwidth limits"; +// qDebug() << Q_FUNC_INFO << "Not all read yet because of bandwidth limits"; return false; } else { if (_bandwidthManager) { From c9c15478133cd6ceb32c300c45ab63dbf3430a8a Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 25 Nov 2014 16:24:47 +0100 Subject: [PATCH 69/87] Compile with Qt4 (QSharedPointer::reset is only in Qt5) --- src/libsync/syncengine.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libsync/syncengine.cpp b/src/libsync/syncengine.cpp index bfbaaf912..55715fdaf 100644 --- a/src/libsync/syncengine.cpp +++ b/src/libsync/syncengine.cpp @@ -740,8 +740,8 @@ void SyncEngine::slotDiscoveryJobFinished(int discoveryResult) // do a database commit _journal->commit("post treewalk"); - _propagator.reset(new OwncloudPropagator (session, _localPath, _remoteUrl, _remotePath, - _journal, &_thread)); + _propagator = QSharedPointer( + new OwncloudPropagator (session, _localPath, _remoteUrl, _remotePath, _journal, &_thread)); connect(_propagator.data(), SIGNAL(completed(SyncFileItem)), this, SLOT(slotJobCompleted(SyncFileItem))); connect(_propagator.data(), SIGNAL(progress(SyncFileItem,quint64)), @@ -851,7 +851,7 @@ void SyncEngine::finalize() emit finished(); // Delete the propagator only after emitting the signal. - _propagator.reset(); + _propagator.clear(); } void SyncEngine::slotProgress(const SyncFileItem& item, quint64 current) From 2ee70db7cda72cd90a42ac4dcc2bcffce462c5bc Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Wed, 26 Nov 2014 01:25:24 -0500 Subject: [PATCH 70/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 22 +++++++++++----------- translations/mirall_cs.ts | 22 +++++++++++----------- translations/mirall_de.ts | 22 +++++++++++----------- translations/mirall_el.ts | 22 +++++++++++----------- translations/mirall_en.ts | 22 +++++++++++----------- translations/mirall_es.ts | 22 +++++++++++----------- translations/mirall_es_AR.ts | 22 +++++++++++----------- translations/mirall_et.ts | 22 +++++++++++----------- translations/mirall_eu.ts | 22 +++++++++++----------- translations/mirall_fa.ts | 22 +++++++++++----------- translations/mirall_fi.ts | 22 +++++++++++----------- translations/mirall_fr.ts | 24 ++++++++++++------------ translations/mirall_gl.ts | 22 +++++++++++----------- translations/mirall_hu.ts | 22 +++++++++++----------- translations/mirall_it.ts | 22 +++++++++++----------- translations/mirall_ja.ts | 22 +++++++++++----------- translations/mirall_nl.ts | 22 +++++++++++----------- translations/mirall_pl.ts | 22 +++++++++++----------- translations/mirall_pt.ts | 22 +++++++++++----------- translations/mirall_pt_BR.ts | 22 +++++++++++----------- translations/mirall_ru.ts | 22 +++++++++++----------- translations/mirall_sk.ts | 22 +++++++++++----------- translations/mirall_sl.ts | 22 +++++++++++----------- translations/mirall_sv.ts | 22 +++++++++++----------- translations/mirall_th.ts | 22 +++++++++++----------- translations/mirall_tr.ts | 22 +++++++++++----------- translations/mirall_uk.ts | 22 +++++++++++----------- translations/mirall_zh_CN.ts | 22 +++++++++++----------- translations/mirall_zh_TW.ts | 22 +++++++++++----------- 29 files changed, 320 insertions(+), 320 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 39ca34c00..87d7aadf8 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -637,22 +637,22 @@ Esteu segur que voleu executar aquesta operació? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway No s'ha rebut cap E-Tag del servidor, comproveu el Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. Hem rebut un E-Tag diferent en la represa. Es comprovarà la pròxima vegada. - + Server returned wrong content-range - + Connection Timeout Temps de connexió excedit @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El fitxer s'ha editat localment però és part d'una compartició només de lectura. S'ha restaurat i la vostra edició és en el fitxer en conflicte. - + The local file was removed during sync. El fitxer local s'ha eliminat durant la sincronització. - + Local file changed during sync. El fitxer local ha canviat durant la sincronització. - + The server did not acknowledge the last chunk. (No e-tag were present) El servidor no ha reconegut l'últim fragment. (No hi havia e-Tag) diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index b2ef4d0d9..2abe65b37 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -637,22 +637,22 @@ Opravdu chcete provést tuto akci? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ze serveru nebyl obdržen E-Tag, zkontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Obdrželi jsme jiný E-Tag pro pokračování. Zkusím znovu příště. - + Server returned wrong content-range Server odpověděl chybným rozsahem obsahu - + Connection Timeout Vypršel čas spojení @@ -1342,17 +1342,17 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému! - + The file could not be downloaded completely. Soubor nemohl být kompletně stažen. - + File %1 cannot be saved because of a local file name clash! Soubor %1 nemohl být uložen z důvodu kolize názvu se souborem v místním systému! @@ -1457,23 +1457,23 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Soubor zde byl editován, ale je součástí sdílení pouze pro čtení. Původní soubor byl obnoven a editovaná verze je uložena v konfliktním souboru. - + The local file was removed during sync. Místní soubor byl odstraněn během synchronizace. - + Local file changed during sync. Místní soubor byl změněn během synchronizace. - + The server did not acknowledge the last chunk. (No e-tag were present) Server nepotvrdil poslední část dat. (Nebyl nalezen e-tag) diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index b2a5d2a85..d4021ea37 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -638,22 +638,22 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Kein E-Tag vom Server empfangen, bitte Proxy / Gateway überprüfen - + We received a different E-Tag for resuming. Retrying next time. Es wurde ein unterschiedlicher E-Tag zum Fortfahren empfangen. Bitte beim nächsten mal nochmal versuchen. - + Server returned wrong content-range Server hat falschen Bereich für den Inhalt zurück gegeben - + Connection Timeout Zeitüberschreitung der Verbindung @@ -1343,17 +1343,17 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! - + The file could not be downloaded completely. Die Datei konnte nicht vollständig herunter geladen werden. - + File %1 cannot be saved because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht gespeichert geladen werden! @@ -1458,23 +1458,23 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Die Datei wurde von einer Nur-Lese-Freigabe lokal bearbeitet. Die Datei wurde wiederhergestellt und Ihre Bearbeitung ist in der Konflikte-Datei. - + The local file was removed during sync. Die lokale Datei wurde während der Synchronisation gelöscht. - + Local file changed during sync. Eine lokale Datei wurde während der Synchronisation geändert. - + The server did not acknowledge the last chunk. (No e-tag were present) Der Server hat den letzten Block nicht bestätigt. (Der E-Tag war nicht vorhanden) diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index f25aceb2b..31fa8063f 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -638,22 +638,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Δεν ελήφθη E-Tag από το διακομιστή, ελέγξτε το διακομιστή μεσολάβησης/πύλη - + We received a different E-Tag for resuming. Retrying next time. Ελήφθη διαφορετικό E-Tag για συνέχιση. Επανάληψη την επόμενη φορά. - + Server returned wrong content-range Ο διακομιστής επέστρεψε εσφαλμένο πεδίο τιμών - + Connection Timeout Λήξη Χρόνου Αναμονής Σύνδεσης @@ -1339,17 +1339,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1454,23 +1454,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και το επεξεργασμένο βρίσκεται στο αρχείο συγκρούσεων. - + The local file was removed during sync. Το τοπικό αρχείο αφαιρέθηκε κατά το συγχρονισμό. - + Local file changed during sync. Το τοπικό αρχείο τροποποιήθηκε κατά τον συγχρονισμό. - + The server did not acknowledge the last chunk. (No e-tag were present) Ο διακομιστής δεν αναγνώρισε το τελευταίο τμήμα. (Δεν υπήρχε e-tag) diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index fc2a82ad4..6b5024780 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -636,22 +636,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout @@ -1333,17 +1333,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1448,23 +1448,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index c1d571653..80f1cdaab 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -637,22 +637,22 @@ Está seguro de que desea realizar esta operación? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway No se recibió ninguna e-tag del servidor, revisar el proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Se recibió una e-tag distinta para reanudar. Se intentará nuevamente. - + Server returned wrong content-range El servidor devolvió un content-range erróneo - + Connection Timeout Tiempo de espera de conexión agotado @@ -1342,17 +1342,17 @@ Desea conectar a cambio sin encriptación (no recomendado)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! - + The file could not be downloaded completely. No se pudo descargar el archivo completamente. - + File %1 cannot be saved because of a local file name clash! ¡ El fichero %1 no puede guardar debido a un conflicto con el nombre de otro fichero local ! @@ -1457,23 +1457,23 @@ Desea conectar a cambio sin encriptación (no recomendado)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El archivo fue modificado localmente, pero es parte de una carpeta compartida en modo de solo lectura. Ha sido recuperado y tu modificación está en el archivo de conflicto. - + The local file was removed during sync. El archivo local fue eliminado durante la sincronización. - + Local file changed during sync. Un archivo local fue modificado durante la sincronización. - + The server did not acknowledge the last chunk. (No e-tag were present) El servidor no reconoció la última parte. (No había una e-tag presente.) diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index fdc31015a..40919771e 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -636,22 +636,22 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout @@ -1335,17 +1335,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1450,23 +1450,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 6b4997062..1bf36eed2 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -637,22 +637,22 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ühtegi E-Silti ei saabunud serverist, kontrolli puhverserverit/lüüsi. - + We received a different E-Tag for resuming. Retrying next time. Saime jätkamiseks erineva E-Sildi. Proovin järgmine kord uuesti. - + Server returned wrong content-range Server tagastas vale vahemiku - + Connection Timeout Ühenduse aegumine @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Faili %1 ei saa salvestada kuna on nime konflikt kohaliku failiga! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Faili on lokaalselt muudetud, kuid see on osa kirjutamisõiguseta jagamisest. See on taastatud ning sinu muudatus on konfliktses failis. - + The local file was removed during sync. Kohalik fail on eemaldatud sünkroniseeringu käigus. - + Local file changed during sync. Kohalik fail muutus sünkroniseeringu käigus. - + The server did not acknowledge the last chunk. (No e-tag were present) Server ei tunnistanud viimast tükki. (E-silt puudus). diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index df7073e7d..624f64aa4 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -637,22 +637,22 @@ Ziur zaude eragiketa hau egin nahi duzula? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ez da E-Tagik jaso zerbitzaritik, egiaztatu Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout Konexioa denboraz kanpo @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. Fitxategi lokala ezabatu da sinkronizazioan. - + Local file changed during sync. Fitxategi lokala aldatu da sinkronizazioan. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index ea83e34c9..ca55920a8 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -634,22 +634,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout تایم اوت اتصال @@ -1331,17 +1331,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1446,23 +1446,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 0dd48f454..80a86008a 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -635,22 +635,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout Yhteys aikakatkaistiin @@ -1334,17 +1334,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1449,23 +1449,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. Paikallinen tiedosto poistettiin synkronoinnin aikana. - + Local file changed during sync. Paikallinen tiedosto muuttui synkronoinnin aikana. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index ff60f2e75..4f325622b 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -637,22 +637,22 @@ Voulez-vous réellement effectuer cette opération ? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Aucun E-Tag reçu du serveur, vérifiez le proxy / la passerelle - + We received a different E-Tag for resuming. Retrying next time. Nous avons reçu un E-Tag différent pour reprendre le téléchargement. Nouvel essai la prochaine fois. - + Server returned wrong content-range Le serveur a retourné une gamme de contenu erronée - + Connection Timeout Temps de connexion expiré @@ -1342,17 +1342,17 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. - + The file could not be downloaded completely. - + Le fichier n'a pas pu être téléchargé intégralement. - + File %1 cannot be saved because of a local file name clash! Le fichier %1 n'a pas pu être sauvegardé en raison d'un conflit sur le nom du fichier local ! @@ -1457,23 +1457,23 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Le fichier a été modifié localement mais appartient à un partage en lecture seule. Il a été restauré et vos modifications sont présentes dans le fichiers de confit. - + The local file was removed during sync. Fichier local supprimé pendant la synchronisation. - + Local file changed during sync. Fichier local modifié pendant la synchronisation. - + The server did not acknowledge the last chunk. (No e-tag were present) Le serveur n'a pas acquitté le dernier morceau (aucun e-tag n'était présent). diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 773eaa65c..59c0c5a83 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -637,22 +637,22 @@ Confirma que quere realizar esta operación? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Non se recibiu a «E-Tag» do servidor, comprobe o proxy e/ou a pasarela - + We received a different E-Tag for resuming. Retrying next time. Recibiuse unha «E-Tag» diferente para continuar. Tentándoo outra vez. - + Server returned wrong content-range O servidor devolveu un intervalo de contidos estragado - + Connection Timeout Esgotouse o tempo de conexión @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! O ficheiro %1 non se gardou debido a unha colisión co nome dun ficheiro local! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mais é parte dunha compartición de só lectura. O ficheiro foi restaurado e a súa edición atopase no ficheiro de conflitos. - + The local file was removed during sync. O ficheiro local retirarase durante a sincronización. - + Local file changed during sync. O ficheiro local cambiou durante a sincronización. - + The server did not acknowledge the last chunk. (No e-tag were present) O servidor non recoñeceu o último fragmento. (Non hai e-tag presente) diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index 3a33154f8..a1e802066 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -634,22 +634,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout @@ -1331,17 +1331,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1446,23 +1446,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index 10596996d..9dc079fed 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -637,22 +637,22 @@ Sei sicuro di voler eseguire questa operazione? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nessun e-tag ricevuto dal server, controlla il proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Abbiamo ricevuto un e-tag diverso per il recupero. Riprova più tardi. - + Server returned wrong content-range Il server ha restituito un content-range errato - + Connection Timeout Connessione scaduta @@ -1341,17 +1341,17 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Il file %1 non può essere scaricato a causa di un conflitto con un file locale. - + The file could not be downloaded completely. Il file non può essere scaricato completamente. - + File %1 cannot be saved because of a local file name clash! Il file %1 non può essere salvato a causa di un conflitto con un file locale. @@ -1456,23 +1456,23 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Il file è stato modificato localmente, ma è parte di una condivisione in sola lettura. È stato ripristinato e la tua modifica è nel file di conflitto. - + The local file was removed during sync. Il file locale è stato rimosso durante la sincronizzazione. - + Local file changed during sync. Un file locale è cambiato durante la sincronizzazione. - + The server did not acknowledge the last chunk. (No e-tag were present) Il server non ha riconosciuto l'ultimo pezzo. (Non era presente alcun e-tag) diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index 105d6ee20..f55842987 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -637,22 +637,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway サーバーからE-Tagを受信できません。プロキシ/ゲートウェイを確認してください。 - + We received a different E-Tag for resuming. Retrying next time. 同期再開時に違う E-Tagを受信しました。次回リトライします。 - + Server returned wrong content-range サーバーが間違ったcontent-rangeを返しました - + Connection Timeout 接続タイムアウト @@ -1340,17 +1340,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! %1 はローカルファイル名が衝突しているため保存できません! @@ -1455,23 +1455,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. ファイルがローカルで編集されましたが、読み込み専用の共有の一部です。ファイルは復元され、あなたの編集は競合するファイル内にあります。 - + The local file was removed during sync. ローカルファイルを同期時に削除します。 - + Local file changed during sync. ローカルのファイルが同期中に変更されました。 - + The server did not acknowledge the last chunk. (No e-tag were present) サーバーは最終チャンクを認識しません。(e-tag が存在しません) diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index cafca3331..3d770251c 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -637,22 +637,22 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Geen E-Tag ontvangen van de server, controleer Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. We ontvingen een afwijkende E-Tag om door te gaan. We proberen het later opnieuw. - + Server returned wrong content-range Server retourneerde verkeerde content-bandbreedte - + Connection Timeout Verbindingstime-out @@ -1342,17 +1342,17 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand - + The file could not be downloaded completely. Het bestand kon niet volledig worden gedownload. - + File %1 cannot be saved because of a local file name clash! Bestand %1 kan niet worden opgeslagen wegens een lokaal bestandsnaam conflict! @@ -1457,23 +1457,23 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Het bestand is lokaal bewerkt, maar hoort bij een alleen-lezen share. Het originele bestand is teruggezet en uw bewerking staat in het conflicten bestand. - + The local file was removed during sync. Het lokale bestand werd verwijderd tijdens sync. - + Local file changed during sync. Lokaal bestand gewijzigd bij sync. - + The server did not acknowledge the last chunk. (No e-tag were present) De server heeft het laatste deel niet bevestigd (er was geen e-tag aanwezig) diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index 652828713..04dc30b7e 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -637,22 +637,22 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nie otrzymano E-Tag z serwera, sprawdź Proxy/Bramę - + We received a different E-Tag for resuming. Retrying next time. Otrzymaliśmy inny E-Tag wznowienia. Spróbuje ponownie następnym razem. - + Server returned wrong content-range Serwer zwrócił błędną zakres zawartości - + Connection Timeout Limit czasu połączenia @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Plik był edytowany lokalnie ale jest częścią udziału z prawem tylko do odczytu. Został przywrócony i Twoja edycja jest w pliku konfliktu - + The local file was removed during sync. Pliki lokalny został usunięty podczas synchronizacji. - + Local file changed during sync. Lokalny plik zmienił się podczas synchronizacji. - + The server did not acknowledge the last chunk. (No e-tag were present) Serwer nie potwierdził ostatniego łańcucha danych. (Nie było żadnego e-tag-u) diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index aab24e881..7e6660d15 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -636,22 +636,22 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nenhum E-Tag recebido do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tentando uma próxima vez. - + Server returned wrong content-range O servidor retornou o alcance-conteúdo errado - + Connection Timeout O tempo de ligação expirou @@ -1339,17 +1339,17 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Ficheiro %1 não pode ser guardado devido à existência de um ficheiro local com o mesmo nome. @@ -1454,23 +1454,23 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mas faz parte de uma prtilha só de leitura. Foi restaurado mas a edição está no ficheiro de conflito. - + The local file was removed during sync. O arquivo local foi removido durante a sincronização. - + Local file changed during sync. Ficheiro local alterado durante a sincronização. - + The server did not acknowledge the last chunk. (No e-tag were present) O servidor não reconheceu o último bloco. (Nenhuma e-tag estava presente) diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index be18a1f8f..db8de69b4 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -637,22 +637,22 @@ Você tem certeza que quer executar esta operação? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nenhuma E-Tag recebida do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tente uma próxima vez. - + Server returned wrong content-range O servidor retornou erro numa série-de-conteúdo - + Connection Timeout Conexão Finalizada @@ -1340,17 +1340,17 @@ Você deseja se conectar sem criptografia (não recomendado)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! - + The file could not be downloaded completely. O arquivo não pode ser baixado completamente. - + File %1 cannot be saved because of a local file name clash! O arquivo %1 não pode ser salvo por causa de um confronto com um nome de arquivo local! @@ -1455,23 +1455,23 @@ Você deseja se conectar sem criptografia (não recomendado)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O arquivo foi editado localmente mas faz parte de compartilhamento só de leitura. Ele foi restaurado mas sua edição está em conflito com o arquivo. - + The local file was removed during sync. O arquivo local foi removido durante a sincronização. - + Local file changed during sync. Arquivo local modificado durante a sincronização. - + The server did not acknowledge the last chunk. (No e-tag were present) O servidor não reconheceu o último bloco. (Nenhuma e-tag estava presente) diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index 0036c5b3a..b7ad2d1b4 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -637,22 +637,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway E-Tag от сервера на получен, проверьте сетевые настройки (настройки прокси, шлюз). - + We received a different E-Tag for resuming. Retrying next time. Мы получили другой E-Tag для возобновления. Повторите попытку позже. - + Server returned wrong content-range Сервер вернул неверный диапазон содержания - + Connection Timeout Тайм-аут подключения @@ -1342,17 +1342,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Файл %1 не может быть загружен из-за локальных конфликтов имен! - + The file could not be downloaded completely. Невозможно полностью загрузить файл. - + File %1 cannot be saved because of a local file name clash! Файл %1 не может быть сохранён из-за совпадения его имени с локальным файлом! @@ -1457,23 +1457,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Этот файл был изменен локально, но является частью опубликованной папки с правами только для чтения. Он восстановлен и ваши изменения находятся в файле конфликтов. - + The local file was removed during sync. Локальный файл был удалён в процессе синхронизации. - + Local file changed during sync. Локальный файл изменился в процессе синхронизации. - + The server did not acknowledge the last chunk. (No e-tag were present) Сервер не смог подтвердить последний отрезок данных. (Отсутствовали теги e-tag) diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 5bf65b2bc..a8dfea709 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -637,22 +637,22 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Zo servera nebol prijatý E-Tag, skontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Prijali sme iný E-Tag pre pokračovanie. Skúsim to neskôr znovu. - + Server returned wrong content-range Server vrátil nesprávnu hodnotu Content-range - + Connection Timeout Spojenie vypršalo @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Súbor bol zmenený, ale je súčasťou zdieľania len na čítanie. Pôvodný súbor bol obnovený a upravená verzia je uložená v konfliktnom súbore. - + The local file was removed during sync. Lokálny súbor bol odstránený počas synchronizácie. - + Local file changed during sync. Lokálny súbor bol zmenený počas synchronizácie. - + The server did not acknowledge the last chunk. (No e-tag were present) Server nepotvrdil posledný kúsok. (Nebol prítomný e-tag) diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 17be1789e..0491ba18e 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -637,22 +637,22 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ni prejete oznake s strežnika. Preveriti je treba podatke posredovalnega strežnika ali prehoda. - + We received a different E-Tag for resuming. Retrying next time. Prejeta je različna oznaka za nadaljevanje opravila. Ponovni poskus bo izveden kasneje. - + Server returned wrong content-range Odziv strežnika kaže na neveljaven obseg vsebine - + Connection Timeout Povezava časovno pretekla @@ -1342,17 +1342,17 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Datoteke %1 ni mogoče prejeti zaradi neskladja z imenom krajevne datoteke! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Datoteke %1 ni mogoče shraniti zaradi neskladja z imenom obstoječe datoteke! @@ -1457,23 +1457,23 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Datoteka je bila krajevno spremenjena, vendar pa je označena za souporabo le za branje. Izvorna datoteka je obnovljena, vaše spremembe pa so zabeležene v datoteki spora. - + The local file was removed during sync. Krajevna datoteka je bila me usklajevanjem odstranjena. - + Local file changed during sync. Krajevna datoteka je bila med usklajevanjem spremenjena. - + The server did not acknowledge the last chunk. (No e-tag were present) Strežnik ni prepoznal zadnjega niza besed. (ni določenih e-oznak) diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index 74f189d99..69175f1ef 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -637,22 +637,22 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ingen e-tag mottogs från servern, kontrollera proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Vi mottog en helt annan e-tag för att återuppta. Försök igen nästa gång. - + Server returned wrong content-range - + Connection Timeout Anslutningen avbröts på grund av timeout @@ -1338,17 +1338,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1453,23 +1453,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Filen ändrades lokalt men är en del av en endast-läsbar delning. Den återställdes och din editering är i konflikt filen. - + The local file was removed during sync. Den lokala filen togs bort under synkronisering. - + Local file changed during sync. Lokal fil ändrades under synk. - + The server did not acknowledge the last chunk. (No e-tag were present) Servern bekräftade inte det sista fil-fragmentet (Ingen e-tag fanns tillgänglig) diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index 7dbe86d2a..8706fe398 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -634,22 +634,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout @@ -1331,17 +1331,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1446,23 +1446,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index fde30e421..e6a9e9df2 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -637,22 +637,22 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Sunucudan E-Etiket alınamadı, Vekil sunucu/Ağ geçidini denetleyin. - + We received a different E-Tag for resuming. Retrying next time. Devam etmek üzere farklı bir E-Etiket aldık. Sonraki işlemde yeniden denenecek. - + Server returned wrong content-range Sunucu yanlış içerik aralığı döndürdü - + Connection Timeout Bağlantı Zaman Aşımı @@ -1342,17 +1342,17 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! %1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! - + The file could not be downloaded completely. Dosya tamamıyla indirilemedi. - + File %1 cannot be saved because of a local file name clash! Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi! @@ -1457,23 +1457,23 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Dosya yerel olarak düzenlendi ancak salt okunur paylaşımın bir parçası. Geri yüklendi ve düzenlemeniz çakışan dosyada. - + The local file was removed during sync. Eşitleme sırasında yerel dosya kaldırıldı. - + Local file changed during sync. Eşitleme sırasında yerel dosya değişti. - + The server did not acknowledge the last chunk. (No e-tag were present) Sunucu son yığını onaylamadı. (Mevcut e-etiket bulunamadı) diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 9676041e9..3e7246265 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -637,22 +637,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Не отримано E-Tag від серверу, перевірте мережеві налаштування (проксі, шлюз) - + We received a different E-Tag for resuming. Retrying next time. Ми отримали інший E-Tag для відновлення. Спробуйте ще раз пізніше. - + Server returned wrong content-range Сервер повернув невірний content-range - + Connection Timeout Тайм-аут З'єднання @@ -1342,17 +1342,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Файл %1 не завантажено, через локальний конфлікт ім'я! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Файл %1 не збережено, через локальний конфлікт ім'я! @@ -1457,23 +1457,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Файл було змінено локально, але він розташований в теці з правами лише на перегляд. Файл відновлено, а ваші зміни розташовані в теці конфліктів. - + The local file was removed during sync. Локальний файл було видалено під час синхронізації. - + Local file changed during sync. Локальний файл змінився під час синхронізації. - + The server did not acknowledge the last chunk. (No e-tag were present) Сервер не зміг підтвердити останній відрізок даних. (Були відсутні e-tag) diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index 96cc468ad..409beeb2e 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -636,22 +636,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway 未能收到来自服务器的 E-Tag,请检查代理/网关 - + We received a different E-Tag for resuming. Retrying next time. 我们收到了不同的恢复 E-Tag,将在下次尝试。 - + Server returned wrong content-range - + Connection Timeout 连接超时 @@ -1335,17 +1335,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1450,23 +1450,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. 本地文件在同步时已修改。 - + The server did not acknowledge the last chunk. (No e-tag were present) diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 346f8858a..1e8fb240e 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -634,22 +634,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + Server returned wrong content-range - + Connection Timeout @@ -1331,17 +1331,17 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1446,23 +1446,23 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) From 0895ca3e4a23e79d29f8425d2f36f16692972f5b Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Thu, 27 Nov 2014 12:09:06 +0100 Subject: [PATCH 71/87] Update issue_template.md --- issue_template.md | 1 + 1 file changed, 1 insertion(+) diff --git a/issue_template.md b/issue_template.md index b11453867..75429c64d 100644 --- a/issue_template.md +++ b/issue_template.md @@ -39,6 +39,7 @@ logs. ```Template for output < 10 lines``` 1. Output of `owncloud --logwindow` or `owncloud --logfile log.txt` +(On Windows using `cmd.exe`, you might need to first `cd` into the ownCloud directory) 2. Web server error log: From 1f9d02e7fa6d4db57aeb01865503b046465f050a Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 27 Nov 2014 12:19:22 +0100 Subject: [PATCH 72/87] Shibboleth: Fix our implemtnation of CookieJar::deleteCookie It was deleting too many cookies. That function is virtual in Qt5 and is used when adding cookie. But some Shibboleth have several cookies with the same name, and we need to keep them. Our implementaiton was meant to delete all the shiboleth cookies when we want to log out --- src/creds/shibbolethcredentials.cpp | 14 +++++++++++++- src/mirall/cookiejar.cpp | 16 ---------------- src/mirall/cookiejar.h | 8 +++----- 3 files changed, 16 insertions(+), 22 deletions(-) diff --git a/src/creds/shibbolethcredentials.cpp b/src/creds/shibbolethcredentials.cpp index ffbac8185..9437d587a 100644 --- a/src/creds/shibbolethcredentials.cpp +++ b/src/creds/shibbolethcredentials.cpp @@ -241,7 +241,19 @@ void ShibbolethCredentials::persist(Account* account) void ShibbolethCredentials::invalidateToken(Account *account) { CookieJar *jar = static_cast(account->networkAccessManager()->cookieJar()); - jar->deleteCookie(_shibCookie); + + // Remove the _shibCookie + auto cookies = jar->allCookies(); + for (auto it = cookies.begin(); it != cookies.end(); ) { + if (it->name() == _shibCookie.name()) { + it = cookies.erase(it); + } else { + ++it; + } + } + jar->setAllCookies(cookies); + + // Clear all other temporary cookies jar->clearSessionCookies(); removeShibCookie(account); _shibCookie = QNetworkCookie(); diff --git a/src/mirall/cookiejar.cpp b/src/mirall/cookiejar.cpp index 53539ac6c..0ee4dc312 100644 --- a/src/mirall/cookiejar.cpp +++ b/src/mirall/cookiejar.cpp @@ -91,27 +91,11 @@ QList CookieJar::cookiesForUrl(const QUrl &url) const return cookies; } -bool CookieJar::deleteCookie(const QNetworkCookie &delCookie) -{ - QList cookies = allCookies(); - bool removeSucceeded = false; - foreach(const QNetworkCookie &cookie, cookies) { - // ### cookies are not identical in attriutes, why? - if (cookie.name() == delCookie.name()) { - cookies.removeOne(cookie); - removeSucceeded = true; - } - } - setAllCookies(cookies); - return removeSucceeded; -} - void CookieJar::clearSessionCookies() { setAllCookies(removeExpired(allCookies())); } - void CookieJar::save() { QFile file; diff --git a/src/mirall/cookiejar.h b/src/mirall/cookiejar.h index 3166b547d..7fad47af0 100644 --- a/src/mirall/cookiejar.h +++ b/src/mirall/cookiejar.h @@ -29,13 +29,11 @@ public: bool setCookiesFromUrl(const QList &cookieList, const QUrl &url) Q_DECL_OVERRIDE; QList cookiesForUrl(const QUrl &url) const Q_DECL_OVERRIDE; - bool deleteCookie(const QNetworkCookie & cookie) -#if QT_VERSION > QT_VERSION_CHECK(5, 0, 0) - Q_DECL_OVERRIDE //that function is not virtual in Qt4 -#endif - ; void clearSessionCookies(); + using QNetworkCookieJar::setAllCookies; + using QNetworkCookieJar::allCookies; + signals: void newCookiesForUrl(const QList& cookieList, const QUrl& url); private: From e7e91b6931d4d30e86a0abc0f240cafb59c851f9 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 27 Nov 2014 12:50:36 +0100 Subject: [PATCH 73/87] Revert "Folder: Don't blindly trigger sync on first EtagJob result" We need to do a sync even if the etag was empty because we do not know if this is because the etag really changed or because it was new. Also, some part of the code rely on this fact to schedule a sync. The fact that there is two sync with 30 sec at the beginning is not a big problem, because we also need to do the sync the put the directory etag in the db. This reverts commit 1c001ee13865ceb4598c989e5308d27aead74540. --- src/mirall/folder.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/mirall/folder.cpp b/src/mirall/folder.cpp index e9678ba9f..8b22144ea 100644 --- a/src/mirall/folder.cpp +++ b/src/mirall/folder.cpp @@ -321,11 +321,7 @@ void Folder::etagRetreived(const QString& etag) // re-enable sync if it was disabled because network was down FolderMan::instance()->setSyncEnabled(true); - if (_lastEtag.isEmpty()) { - _lastEtag = etag; - // don't schedule a sync in this case, the _lastEtag is empty because it is the start - // and a sync was scheduled through other means anyway. - } else if (_lastEtag != etag) { + if (_lastEtag != etag) { _lastEtag = etag; emit scheduleToSync(alias()); } From a3c5da90d22ebea45fe5ae46ca9d7b6d7bbef4b2 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Thu, 27 Nov 2014 13:10:14 +0100 Subject: [PATCH 74/87] Update issue_template.md --- issue_template.md | 1 + 1 file changed, 1 insertion(+) diff --git a/issue_template.md b/issue_template.md index 75429c64d..c36b35bd1 100644 --- a/issue_template.md +++ b/issue_template.md @@ -40,6 +40,7 @@ logs. 1. Output of `owncloud --logwindow` or `owncloud --logfile log.txt` (On Windows using `cmd.exe`, you might need to first `cd` into the ownCloud directory) +(See also http://doc.owncloud.org/desktop/1.5/troubleshooting.html#client-logfile ) 2. Web server error log: From 2ed2ef3b28c8444dd6581330d54dac52f4170515 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 27 Nov 2014 14:50:49 +0100 Subject: [PATCH 75/87] Propagator QNAM: Fix resuming We forgot to account the fact that we could have been resuming when comparing the size of the Content-lenght to the size of the temporary file --- src/mirall/propagator_qnam.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mirall/propagator_qnam.cpp b/src/mirall/propagator_qnam.cpp index ca9d4eb30..f0c815e18 100644 --- a/src/mirall/propagator_qnam.cpp +++ b/src/mirall/propagator_qnam.cpp @@ -749,9 +749,10 @@ void PropagateDownloadFileQNAM::slotGetFinished() * truncated, as described here: https://github.com/owncloud/mirall/issues/2528 */ const QByteArray sizeHeader("Content-Length"); - qint64 bodySize = job->reply()->rawHeader(sizeHeader).toLongLong(); + quint64 bodySize = job->reply()->rawHeader(sizeHeader).toULongLong(); - if(bodySize > 0 && bodySize != _tmpFile.size() ) { + if(bodySize > 0 && bodySize != _tmpFile.size() - job->resumeStart() ) { + qDebug() << bodySize << _tmpFile.size() << job->resumeStart(); _propagator->_anotherSyncNeeded = true; done(SyncFileItem::SoftError, tr("The file could not be downloaded completely.")); return; From fc3a8b944e293305752d8c5dc62dc044563a1a8e Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 27 Nov 2014 15:36:13 +0100 Subject: [PATCH 76/87] Propagator: Don't forget to mark the direcotry as finished if its first job fails Otherwise we would go ahead and propagate the content of the directory --- src/libsync/owncloudpropagator.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libsync/owncloudpropagator.cpp b/src/libsync/owncloudpropagator.cpp index bacf60b3c..ed3c8c598 100644 --- a/src/libsync/owncloudpropagator.cpp +++ b/src/libsync/owncloudpropagator.cpp @@ -557,6 +557,7 @@ void PropagateDirectory::slotSubJobFinished(SyncFileItem::Status status) if (status == SyncFileItem::FatalError || (sender() == _firstJob.data() && status != SyncFileItem::Success && status != SyncFileItem::Restoration)) { abort(); + _state = Finished; emit finished(status); return; } else if (status == SyncFileItem::NormalError || status == SyncFileItem::SoftError) { From 0ec2e71f58adce543a980bccb5763206d05385a9 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Fri, 28 Nov 2014 01:25:25 -0500 Subject: [PATCH 77/87] [tx-robot] updated from transifex --- translations/mirall_ca.ts | 46 ++++++++++++++++++------------------ translations/mirall_cs.ts | 46 ++++++++++++++++++------------------ translations/mirall_de.ts | 46 ++++++++++++++++++------------------ translations/mirall_el.ts | 46 ++++++++++++++++++------------------ translations/mirall_en.ts | 46 ++++++++++++++++++------------------ translations/mirall_es.ts | 46 ++++++++++++++++++------------------ translations/mirall_es_AR.ts | 46 ++++++++++++++++++------------------ translations/mirall_et.ts | 46 ++++++++++++++++++------------------ translations/mirall_eu.ts | 46 ++++++++++++++++++------------------ translations/mirall_fa.ts | 46 ++++++++++++++++++------------------ translations/mirall_fi.ts | 46 ++++++++++++++++++------------------ translations/mirall_fr.ts | 46 ++++++++++++++++++------------------ translations/mirall_gl.ts | 46 ++++++++++++++++++------------------ translations/mirall_hu.ts | 46 ++++++++++++++++++------------------ translations/mirall_it.ts | 46 ++++++++++++++++++------------------ translations/mirall_ja.ts | 46 ++++++++++++++++++------------------ translations/mirall_nl.ts | 46 ++++++++++++++++++------------------ translations/mirall_pl.ts | 46 ++++++++++++++++++------------------ translations/mirall_pt.ts | 46 ++++++++++++++++++------------------ translations/mirall_pt_BR.ts | 46 ++++++++++++++++++------------------ translations/mirall_ru.ts | 46 ++++++++++++++++++------------------ translations/mirall_sk.ts | 46 ++++++++++++++++++------------------ translations/mirall_sl.ts | 46 ++++++++++++++++++------------------ translations/mirall_sv.ts | 46 ++++++++++++++++++------------------ translations/mirall_th.ts | 46 ++++++++++++++++++------------------ translations/mirall_tr.ts | 46 ++++++++++++++++++------------------ translations/mirall_uk.ts | 46 ++++++++++++++++++------------------ translations/mirall_zh_CN.ts | 46 ++++++++++++++++++------------------ translations/mirall_zh_TW.ts | 46 ++++++++++++++++++------------------ 29 files changed, 667 insertions(+), 667 deletions(-) diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index 87d7aadf8..915f77fab 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -309,89 +309,89 @@ Temps restant total %5 No es pot llegir %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 altres fitxers s'han esborrat - + %1 has been removed. %1 names a file. S'ha esborrat '%1' - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 altres fitxers s'han descarregat. - + %1 has been downloaded. %1 names a file. S'ha descarregat %1 - + %1 and %2 other files have been updated. %1 i %2 altres fitxer(s) s'han actualitzat. - + %1 has been updated. %1 names a file. S'ha actualitzat %1 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han reanomenat. - + %1 has been renamed to %2. %1 and %2 name files. %1 s'ha reanomenat a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han eliminat. - + %1 has been moved to %2. %1 s'ha mogut a %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. %1 no s'ha pogut sincronitzar degut a un error. Mira el registre per detalls. - + Sync Activity Activitat de sincronització - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Això podria ser perquè la carpeta ha estat reconfigurada silenciosament, o que Esteu segur que voleu executar aquesta operació? - + Remove All Files? Esborra tots els fitxers? - + Remove all files Esborra tots els fitxers - + Keep files Mantén els fitxers @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Error d'accés - + You must sign in as user %1 Cal identificar-se com a usuari %1 diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 2abe65b37..7b85addc6 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -309,89 +309,89 @@ Celkový zbývající čas %5 %1 není čitelný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 dalších souborů bylo odebráno. - + %1 has been removed. %1 names a file. %1 byl odebrán. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 dalších souborů bylo staženo. - + %1 has been downloaded. %1 names a file. %1 byl stažen. - + %1 and %2 other files have been updated. %1 a %2 dalších souborů bylo aktualizováno. - + %1 has been updated. %1 names a file. %1 byl aktualizován. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 byl přejmenován na %2 a %3 dalších souborů bylo přejmenováno. - + %1 has been renamed to %2. %1 and %2 name files. %1 byl přejmenován na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 byl přesunut do %2 a %3 dalších souborů bylo přesunuto. - + %1 has been moved to %2. %1 byl přemístěn do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 a %2 další soubory nebyly kvůli chybě synchronizovány. Detaily jsou k nalezení v logu. - + %1 could not be synced due to an error. See the log for details. %1 nebyl kvůli chybě synchronizován. Detaily jsou k nalezení v logu. - + Sync Activity Průběh synchronizace - + Could not read system exclude file Nezdařilo se přečtení systémového exclude souboru - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto může být způsobeno změnou v nastavení synchronizace složky nebo tím Opravdu chcete provést tuto akci? - + Remove All Files? Odstranit všechny soubory? - + Remove all files Odstranit všechny soubory - + Keep files Ponechat soubory @@ -1347,12 +1347,12 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)?Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému! - + The file could not be downloaded completely. Soubor nemohl být kompletně stažen. - + File %1 cannot be saved because of a local file name clash! Soubor %1 nemohl být uložen z důvodu kolize názvu se souborem v místním systému! @@ -1664,12 +1664,12 @@ Chcete se místo toho připojit nezabezpečeně (nedoporučuje se)? Mirall::ShibbolethCredentials - + Login Error Chyba přihlášení - + You must sign in as user %1 Musíte se přihlásit jako uživatel %1 diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index d4021ea37..f94a87abe 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -310,89 +310,89 @@ Gesamtzeit übrig %5 %1 ist nicht lesbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 und %2 andere Dateien wurden gelöscht. - + %1 has been removed. %1 names a file. %1 wurde gelöscht. - + %1 and %2 other files have been downloaded. %1 names a file. %1 und %2 andere Dateien wurden heruntergeladen. - + %1 has been downloaded. %1 names a file. %1 wurde heruntergeladen. - + %1 and %2 other files have been updated. %1 und %2 andere Dateien wurden aktualisiert. - + %1 has been updated. %1 names a file. %1 wurde aktualisiert. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 wurde in %2 umbenannt und %3 andere Dateien wurden umbenannt. - + %1 has been renamed to %2. %1 and %2 name files. %1 wurde in %2 umbenannt. - + %1 has been moved to %2 and %3 other files have been moved. %1 wurde in %2 verschoben und %3 andere Dateien wurden verschoben. - + %1 has been moved to %2. %1 wurde in %2 verschoben. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 und %2 weitere Dateien konnten aufgrund von Fehlern nicht synchronisiert werden. Schauen Sie in das Protokoll für Details. - + %1 could not be synced due to an error. See the log for details. %1 konnte aufgrund eines Fehlers nicht synchronisiert werden. Schauen Sie in das Protokoll für Details. - + Sync Activity Synchronisierungsaktivität - + Could not read system exclude file Systemeigene Ausschlussdatei kann nicht gelesen werden - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Vielleicht wurde der Ordner neu konfiguriert, oder alle Dateien wurden händisch Sind Sie sicher, dass sie diese Operation durchführen wollen? - + Remove All Files? Alle Dateien löschen? - + Remove all files Lösche alle Dateien - + Keep files Dateien behalten @@ -1348,12 +1348,12 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)?Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! - + The file could not be downloaded completely. Die Datei konnte nicht vollständig herunter geladen werden. - + File %1 cannot be saved because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht gespeichert geladen werden! @@ -1661,12 +1661,12 @@ Möchten Sie stattdessen unverschlüsselt verbinden (nicht empfohlen)? Mirall::ShibbolethCredentials - + Login Error Log-In Fehler - + You must sign in as user %1 Sie müssen sich als %1 einloggen diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 31fa8063f..24d6f07ee 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -310,89 +310,89 @@ Total time left %5 Το %1 δεν είναι αναγνώσιμο. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. Το %1 και άλλα %2 αρχεία αφαιρέθηκαν. - + %1 has been removed. %1 names a file. Το %1 αφαιρέθηκε. - + %1 and %2 other files have been downloaded. %1 names a file. Το αρχείο %1 και άλλα %2 αρχεία έχουν ληφθεί. - + %1 has been downloaded. %1 names a file. Το %1 έχει ληφθεί. - + %1 and %2 other files have been updated. Το αρχείο %1 και %2 άλλα αρχεία έχουν ενημερωθεί. - + %1 has been updated. %1 names a file. Το %1 έχει ενημερωθεί. - + %1 has been renamed to %2 and %3 other files have been renamed. Το αρχείο %1 έχει μετονομαστεί σε %2 και άλλα %3 αρχεία έχουν μετονομαστεί. - + %1 has been renamed to %2. %1 and %2 name files. Το %1 έχει μετονομαστεί σε %2. - + %1 has been moved to %2 and %3 other files have been moved. Το αρχείο %1 έχει μετακινηθεί στο %2 και %3 άλλα αρχεία έχουν μετακινηθεί. - + %1 has been moved to %2. Το %1 έχει μετακινηθεί στο %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 και %2 άλλα αρχεία δεν ήταν δυνατό να συγχρονιστούν εξαιτίας σφαλμάτων. Δείτε το αρχείο καταγραφής για λεπτομέρειες. - + %1 could not be synced due to an error. See the log for details. %1 δεν ήταν δυνατό να συγχρονιστεί εξαιτίας ενός σφάλματος. Δείτε το αρχείο καταγραφής για λεπτομέρειες. - + Sync Activity Δραστηριότητα Συγχρονισμού - + Could not read system exclude file Αδυναμία ανάγνωσης αρχείου αποκλεισμού συστήματος - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -401,17 +401,17 @@ Are you sure you want to perform this operation? Είστε σίγουροι ότι θέλετε να εκτελέσετε αυτή τη λειτουργία; - + Remove All Files? Αφαίρεση Όλων των Αρχείων; - + Remove all files Αφαίρεση όλων των αρχείων - + Keep files Διατήρηση αρχείων @@ -1344,12 +1344,12 @@ Do you want to connect unencrypted instead (not recommended)? Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1655,12 +1655,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Σφάλμα Σύνδεσης - + You must sign in as user %1 Πρέπει να εισέλθετε σαν χρήστης %1 diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 6b5024780..abde7ab52 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -310,106 +310,106 @@ Total time left %5 - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1338,12 +1338,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1655,12 +1655,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 80f1cdaab..8ea2cb097 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -309,89 +309,89 @@ Tiempo restante %5 %1 es ilegible. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 y %2 otros archivos han sido eliminados. - + %1 has been removed. %1 names a file. %1 ha sido eliminado. - + %1 and %2 other files have been downloaded. %1 names a file. %1 y %2 otros archivos han sido descargados. - + %1 has been downloaded. %1 names a file. %1 ha sido descargado. - + %1 and %2 other files have been updated. %1 y %2 otros archivos han sido actualizados. - + %1 has been updated. %1 names a file. %1 ha sido actualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 ha sido renombrado a %2 y %3 otros archivos han sido renombrados. - + %1 has been renamed to %2. %1 and %2 name files. %1 ha sido renombrado a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 ha sido movido a %2 y %3 otros archivos han sido movidos. - + %1 has been moved to %2. %1 ha sido movido a %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 y otros %2 archivos no pudieron ser sincronizados debido a errores. Para más detalles, vea el registro. - + %1 could not be synced due to an error. See the log for details. %1 no pudo ser sincronizado debido a un error. Para más detalles, vea el registro. - + Sync Activity Actividad en la Sincronización - + Could not read system exclude file No se pudo leer el archivo de exclusión del sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Esto se puede deber a que la carpeta fue reconfigurada de forma silenciosa o a q Está seguro de que desea realizar esta operación? - + Remove All Files? Eliminar todos los archivos? - + Remove all files Eliminar todos los archivos - + Keep files Conservar archivos @@ -1347,12 +1347,12 @@ Desea conectar a cambio sin encriptación (no recomendado)? ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! - + The file could not be downloaded completely. No se pudo descargar el archivo completamente. - + File %1 cannot be saved because of a local file name clash! ¡ El fichero %1 no puede guardar debido a un conflicto con el nombre de otro fichero local ! @@ -1662,12 +1662,12 @@ Desea conectar a cambio sin encriptación (no recomendado)? Mirall::ShibbolethCredentials - + Login Error Error al iniciar sesión - + You must sign in as user %1 Debe iniciar sesión como el usuario %1 diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index 40919771e..05e24e7fb 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -308,89 +308,89 @@ Total time left %5 No se puede leer %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Actividad de Sync - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o ¿Estás seguro de que querés realizar esta operación? - + Remove All Files? ¿Borrar todos los archivos? - + Remove all files Borrar todos los archivos - + Keep files Conservar archivos @@ -1340,12 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1651,12 +1651,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index 1bf36eed2..c8ea6ea06 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -309,89 +309,89 @@ Aega kokku jäänud %5 %1 pole loetav. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ja %2 teist faili eemaldati. - + %1 has been removed. %1 names a file. %1 on eemaldatud. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ja %2 teist faili on alla laaditud. - + %1 has been downloaded. %1 names a file. %1 on alla laaditud. - + %1 and %2 other files have been updated. %1 ja %2 teist faili on uuendatud. - + %1 has been updated. %1 names a file. %1 on uuendatud. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 on ümber nimetatud %2 ja %3 muud faili on samuti ümber nimetatud - + %1 has been renamed to %2. %1 and %2 name files. %1 on ümber nimetatud %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 on tõstetud %2 ning %3 muud faili on samuti liigutatud. - + %1 has been moved to %2. %1 on tõstetud %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 ja veel %2 muu faili sünkroniseerimine ebaõnnestus tõrgete tõttu. Vaata üksikasju. - + %1 could not be synced due to an error. See the log for details. %1 sünkroniseerimine ebaõnnestus tõrke tõttu. Lisainfot vaata logist. - + Sync Activity Sünkroniseerimise tegevus - + Could not read system exclude file Süsteemi väljajätmiste faili lugemine ebaõnnestus - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ See võib olla põhjustatud kataloogi ümberseadistusest või on toimunud kõiki Oled kindel, et soovid seda operatsiooni teostada? - + Remove All Files? Kustutada kõik failid? - + Remove all files Kustutada kõik failid - + Keep files Säilita failid @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Faili %1 ei saa salvestada kuna on nime konflikt kohaliku failiga! @@ -1657,12 +1657,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Sisselogimise viga - + You must sign in as user %1 Pead sisse logima kui kasutaja %1 diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index 624f64aa4..065185216 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -309,89 +309,89 @@ Geratzen den denbora %5 %1 ezin da irakurri. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 eta beste %2 fitxategi ezabatu dira. - + %1 has been removed. %1 names a file. %1 ezabatua izan da. - + %1 and %2 other files have been downloaded. %1 names a file. %1 eta beste %2 fitxategi deskargatu dira. - + %1 has been downloaded. %1 names a file. %1 deskargatu da. - + %1 and %2 other files have been updated. %1 eta beste %2 fitxategi kargatu dira. - + %1 has been updated. %1 names a file. %1 kargatu da. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 %2-(e)ra berrizendatu da eta beste %3 fitxategi berrizendatu dira. - + %1 has been renamed to %2. %1 and %2 name files. %1 %2-(e)ra berrizendatu da. - + %1 has been moved to %2 and %3 other files have been moved. %1 %2-(e)ra berrizendatu da eta beste %3 fitxategi mugitu dira. - + %1 has been moved to %2. %1 %2-(e)ra mugitu da. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Sinkronizazio Jarduerak - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Izan daiteke karpeta isilpean birkonfiguratu delako edo fitxategi guztiak eskuz Ziur zaude eragiketa hau egin nahi duzula? - + Remove All Files? Ezabatu Fitxategi Guztiak? - + Remove all files Ezabatu fitxategi guztiak - + Keep files Mantendu fitxategiak @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Errorea sartzean - + You must sign in as user %1 diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index ca55920a8..ff2f4697e 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -308,106 +308,106 @@ Total time left %5 %1 قابل خواندن نیست. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 حذف شده است. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. %1 بارگزاری شد. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity فعالیت همگام سازی - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files نگه داشتن فایل ها @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1647,12 +1647,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 80a86008a..e3e356fc8 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -309,106 +309,106 @@ Aikaa jäljellä yhteensä %5 %1 ei ole luettavissa. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ja %2 muuta tiedostoa on poistettu. - + %1 has been removed. %1 names a file. %1 on poistettu. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ja %2 muuta tiedostoa on ladattu. - + %1 has been downloaded. %1 names a file. %1 on ladattu. - + %1 and %2 other files have been updated. %1 ja %2 muuta tiedostoa on päivitetty. - + %1 has been updated. %1 names a file. %1 on päivitetty. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. %1 on nimetty uudeelleen muotoon %2. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 on siirretty kohteeseen %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Synkronointiaktiviteetti - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? Poistetaanko kaikki tiedostot? - + Remove all files Poista kaikki tiedostot - + Keep files Säilytä tiedostot @@ -1339,12 +1339,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1650,12 +1650,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Kirjautumisvirhe - + You must sign in as user %1 Kirjaudu käyttäjänä %1 diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index 4f325622b..2d33b2cc0 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -309,89 +309,89 @@ Temps restant total %5 %1 ne peut pas être lu. - + %1: %2 %1 : %2 - + %1 and %2 other files have been removed. %1 names a file. %1 et %2 autres fichiers ont été supprimés. - + %1 has been removed. %1 names a file. %1 a été supprimé. - + %1 and %2 other files have been downloaded. %1 names a file. %1 et %2 autres fichiers ont été téléchargés. - + %1 has been downloaded. %1 names a file. %1 a été téléchargé. - + %1 and %2 other files have been updated. %1 et %2 autres fichiers ont été mis à jour. - + %1 has been updated. %1 names a file. %1 a été mis à jour. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 a été renommé en %2 et %3 autres fichiers ont été renommés. - + %1 has been renamed to %2. %1 and %2 name files. %1 a été renommé en %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 a été déplacé vers %2 et %3 autres fichiers ont été déplacés. - + %1 has been moved to %2. %1 a été déplacé vers %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 et %2 autres fichiers n'ont pu être synchronisés pour cause d'erreur. Consultez les logs pour les détails. - + %1 could not be synced due to an error. See the log for details. %1 n'a pu être synchronisé pour cause d'erreur. Consultez les logs pour les détails. - + Sync Activity Activité de synchronisation - + Could not read system exclude file Impossible de lire le fichier d'exclusion du système - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Cela est peut-être du à une reconfiguration silencieuse du dossier, ou parce q Voulez-vous réellement effectuer cette opération ? - + Remove All Files? Supprimer tous les fichiers ? - + Remove all files Supprimer tous les fichiers - + Keep files Garder les fichiers @@ -1347,12 +1347,12 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ?Le fichier %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. - + The file could not be downloaded completely. Le fichier n'a pas pu être téléchargé intégralement. - + File %1 cannot be saved because of a local file name clash! Le fichier %1 n'a pas pu être sauvegardé en raison d'un conflit sur le nom du fichier local ! @@ -1661,12 +1661,12 @@ Voulez-vous vous connecter sans chiffrement à la place (non recommandé) ? Mirall::ShibbolethCredentials - + Login Error Erreur de connexion - + You must sign in as user %1 Vous devez vous connecter en tant qu'utilisateur %1 diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 59c0c5a83..59d8b1a96 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -309,89 +309,89 @@ Tempo total restante %5 %1 non é lexíbel. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. O ficheiro %1 e outros %2 foron retirados satisfactoriamente. - + %1 has been removed. %1 names a file. %1 foi retirado satisfactoriamente. - + %1 and %2 other files have been downloaded. %1 names a file. O ficheiro %1 e outros %2 foron descargados satisfactoriamente. - + %1 has been downloaded. %1 names a file. %1 foi descargado satisfactoriamente. - + %1 and %2 other files have been updated. O ficheiro %1 e outros %2 foron enviados satisfactoriamente. - + %1 has been updated. %1 names a file. %1 foi enviado satisfactoriamente. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado satisfactoriamente a %2 e outros %3 tamén foron renomeados satisfactoriamente. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado satisfactoriamente a %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido satisfactoriamente a %2 e outros %3 tamén foron movidos satisfactoriamente. - + %1 has been moved to %2. %1 foi movido satisfactoriamente a %2 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 non se puideron sincronizar debido a erros. Vexa os detalles no rexistro. - + %1 could not be synced due to an error. See the log for details. %1 non se puido sincronizar debe a un erro. Vexa os detalles no rexistro. - + Sync Activity Actividade de sincronización - + Could not read system exclude file Non se puido ler o ficheiro de exclusión do sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isto podería ser debido a que o cartafol foi reconfigurado en silencio, ou a qu Confirma que quere realizar esta operación? - + Remove All Files? Retirar todos os ficheiros? - + Remove all files Retirar todos os ficheiros - + Keep files Manter os ficheiros @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! O ficheiro %1 non se gardou debido a unha colisión co nome dun ficheiro local! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Erro de acceso - + You must sign in as user %1 Ten que rexistrarse como usuario %1 diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index a1e802066..2c579e9b0 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -308,106 +308,106 @@ Total time left %5 %1 nem olvasható. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? El legyen távolítva az összes fájl? - + Remove all files Összes fájl eltávolítása - + Keep files Fájlok megtartása @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1647,12 +1647,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index 9dc079fed..a0296167f 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -309,89 +309,89 @@ Totale tempo rimanente %5 %1 non è leggibile. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 altri file sono stati rimossi. - + %1 has been removed. %1 names a file. %1 è stato rimosso. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 altri file sono stati scaricati. - + %1 has been downloaded. %1 names a file. %1 è stato scaricato. - + %1 and %2 other files have been updated. %1 e %2 altri file sono stati aggiornati. - + %1 has been updated. %1 names a file. %1 è stato aggiornato. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 è stato rinominato in %2 e %3 altri file sono stati rinominati. - + %1 has been renamed to %2. %1 and %2 name files. %1 è stato rinominato in %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 è stato spostato in %2 e %3 altri file sono stati spostati. - + %1 has been moved to %2. %1 è stato spostato in %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. 1% e altri %2 file non sono stati sincronizzati a causa di errori. Controlla il log per i dettagli. - + %1 could not be synced due to an error. See the log for details. %1 non può essere sincronizzato a causa di un errore. Controlla il log per i dettagli. - + Sync Activity Sincronizza attività - + Could not read system exclude file Impossibile leggere il file di esclusione di sistema - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Ciò potrebbe accadere in caso di riconfigurazione della cartella o di rimozione Sei sicuro di voler eseguire questa operazione? - + Remove All Files? Vuoi rimuovere tutti i file? - + Remove all files Rimuovi tutti i file - + Keep files Mantieni i file @@ -1346,12 +1346,12 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Il file %1 non può essere scaricato a causa di un conflitto con un file locale. - + The file could not be downloaded completely. Il file non può essere scaricato completamente. - + File %1 cannot be saved because of a local file name clash! Il file %1 non può essere salvato a causa di un conflitto con un file locale. @@ -1661,12 +1661,12 @@ Vuoi invece connetterti senza cifratura (non consigliato)? Mirall::ShibbolethCredentials - + Login Error Errore di accesso - + You must sign in as user %1 Devi accedere con l'utente %1 diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index f55842987..e5be379c4 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -309,89 +309,89 @@ Total time left %5 %1 は読み込み可能ではありません。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 と他 %2 個のファイルが削除されました。 - + %1 has been removed. %1 names a file. %1 は削除されました。 - + %1 and %2 other files have been downloaded. %1 names a file. %1 と他 %2 個のファイルがダウンロードされました。 - + %1 has been downloaded. %1 names a file. %1 はダウンロードされました。 - + %1 and %2 other files have been updated. %1 と他 %2 個のファイルが更新されました。 - + %1 has been updated. %1 names a file. %1 が更新されました。 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 の名前が %2 に変更され、他 %3 個のファイルの名前が変更されました。 - + %1 has been renamed to %2. %1 and %2 name files. %1 の名前が %2 に変更されました。 - + %1 has been moved to %2 and %3 other files have been moved. %1 が %2 に移され、他 %3 個のファイルが移されました。 - + %1 has been moved to %2. %1 は %2 に移されました。 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. エラーにより、%1 や %2 等のファイルが同期できませんでした。ログで詳細を確認してください。 - + %1 could not be synced due to an error. See the log for details. エラーにより %1 が未同期です。ログで詳細を確認してください。 - + Sync Activity 同期アクティビティ - + Could not read system exclude file システム上の除外ファイルを読み込めません - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? 本当にこの操作を実行しますか? - + Remove All Files? すべてのファイルを削除しますか? - + Remove all files すべてのファイルを削除 - + Keep files ファイルを残す @@ -1345,12 +1345,12 @@ Do you want to connect unencrypted instead (not recommended)? ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! %1 はローカルファイル名が衝突しているため保存できません! @@ -1658,12 +1658,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error ログインエラー - + You must sign in as user %1 ユーザー %1 としてログインする必要があります diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 3d770251c..34e155ca4 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -309,89 +309,89 @@ Totaal resterende tijd %5 %1 is niet leesbaar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 en %2 andere bestanden zijn verwijderd. - + %1 has been removed. %1 names a file. %1 is verwijderd. - + %1 and %2 other files have been downloaded. %1 names a file. %1 en %2 andere bestanden zijn gedownloaded. - + %1 has been downloaded. %1 names a file. %1 is gedownloaded. - + %1 and %2 other files have been updated. %1 en %2 andere bestanden zijn bijgewerkt. - + %1 has been updated. %1 names a file. %1 is bijgewerkt. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 is hernoemd naar %2 en %3 andere bestanden zijn ook hernoemd. - + %1 has been renamed to %2. %1 and %2 name files. %1 is hernoemd naar %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 is verplaatst naar %2 en %3 andere bestanden zijn ook verplaatst. - + %1 has been moved to %2. %1 is verplaatst naar %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 en %2 andere bestanden konden niet worden gesynchroniseerd door fouten. Bekijk het log voor details. - + %1 could not be synced due to an error. See the log for details. %1 kon niet worden gesynchroniseerd door een fout. Bekijk het log voor details. - + Sync Activity Synchronisatie-activiteit - + Could not read system exclude file Kon het systeem-uitsluitingsbestand niet lezen - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Dit kan komen doordat de map ongemerkt opnieuw geconfigureerd is of doordat alle Weet u zeker dat u deze bewerking wilt uitvoeren? - + Remove All Files? Verwijder alle bestanden? - + Remove all files Verwijder alle bestanden - + Keep files Bewaar bestanden @@ -1347,12 +1347,12 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand - + The file could not be downloaded completely. Het bestand kon niet volledig worden gedownload. - + File %1 cannot be saved because of a local file name clash! Bestand %1 kan niet worden opgeslagen wegens een lokaal bestandsnaam conflict! @@ -1661,12 +1661,12 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Mirall::ShibbolethCredentials - + Login Error Inlogfout - + You must sign in as user %1 U moet inloggen als gebruiker %1 diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index 04dc30b7e..e9ee7b788 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -309,89 +309,89 @@ Pozostało czasu %5 %1 jest nie do odczytu. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 inne pliki zostały usunięte. - + %1 has been removed. %1 names a file. %1 został usunięty. - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 pozostałe pliki zostały ściągnięte. - + %1 has been downloaded. %1 names a file. %1 został ściągnięty. - + %1 and %2 other files have been updated. %1 i %2 inne pliki zostały zaktualizowane. - + %1 has been updated. %1 names a file. %1 został uaktualniony. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 zmienił nazwę na %2 i %3 inne pliki mają zmienione nazwy. - + %1 has been renamed to %2. %1 and %2 name files. %1 zmienił nazwę na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 został zmieniony na %2 i %3 inne pliku zostały przeniesione. - + %1 has been moved to %2. %1 został przeniesiony do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 i %2 inne pliki nie mogą zostać zsynchronizowane z powodu błędów. Zobacz szczegóły w logu. - + %1 could not be synced due to an error. See the log for details. %1 nie może zostać zsynchronizowany z powodu błędu. Zobacz szczegóły w logu. - + Sync Activity Aktywności synchronizacji - + Could not read system exclude file Nie można przeczytać pliku wyłączeń - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mogło się tak zdarzyć z powodu niezauważonej rekonfiguracji folderu, lub te Czy jesteś pewien/pewna, że chcesz wykonać tę operację? - + Remove All Files? Usunąć wszystkie pliki? - + Remove all files Usuń wszystkie pliki - + Keep files Pozostaw pliki @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Błąd logowania - + You must sign in as user %1 Musisz zalogować się jako użytkownik %1 diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 7e6660d15..76b32bc72 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -309,89 +309,89 @@ Tempo total restante %5 %1 não é legível. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros ficheiros foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. Foi feito o download de outros ficheiros %1 e %2. - + %1 has been downloaded. %1 names a file. %1 foi transferido. - + %1 and %2 other files have been updated. %1 e %2 outros ficheiros foram atualizados. - + %1 has been updated. %1 names a file. %1 foi atualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado para %2 e %3 outros ficheiros foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido para %2 e %3 outros ficheiros foram movidos. - + %1 has been moved to %2. %1 foi movido para %2 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 outros ficheiros não sincronizaram devido a erros. Verifica o log para mais detalhes. - + %1 could not be synced due to an error. See the log for details. %1 não sincronizou devido a um erro. Verifica o log para mais detalhes. - + Sync Activity Atividade de Sincronização - + Could not read system exclude file Não foi possível ler o ficheiro system exclude - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha "Manter os ficheiros". Se quer apagar os seus dados, escolha "Remover todos os ficheiros". - + Remove All Files? Remover todos os ficheiros? - + Remove all files Remover todos os ficheiros - + Keep files Manter os ficheiros @@ -1344,12 +1344,12 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)?O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Ficheiro %1 não pode ser guardado devido à existência de um ficheiro local com o mesmo nome. @@ -1659,12 +1659,12 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)? Mirall::ShibbolethCredentials - + Login Error Erro de login - + You must sign in as user %1 Deve fazer o login como utilizador %1. diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index db8de69b4..1f30273f7 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -309,89 +309,89 @@ Total de tempo que falta 5% %1 não pode ser lido. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros arquivos foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 outros arquivos foram baixados. - + %1 has been downloaded. %1 names a file. %1 foi baixado. - + %1 and %2 other files have been updated. %1 e %2 outros arquivos foram atualizados. - + %1 has been updated. %1 names a file. %1 foi atualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado para %2 e %3 outros três arquivos foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido para %2 e %3 outros arquivos foram movidos. - + %1 has been moved to %2. %1 foi movido para %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 e %2 outros arquivos não puderam ser sincronizados devido a erros. Veja o log para obter detalhes. - + %1 could not be synced due to an error. See the log for details. %1 não pode ser sincronizado devido a um erro. Veja o log para obter detalhes. - + Sync Activity Atividade de Sincronização - + Could not read system exclude file Não foi possível ler o sistema de arquivo de exclusão - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Isso pode ser porque a pasta foi silenciosamente reconfigurada, ou todos os arqu Você tem certeza que quer executar esta operação? - + Remove All Files? Deseja Remover Todos os Arquivos? - + Remove all files Remover todos os arquivos - + Keep files Manter arquivos @@ -1345,12 +1345,12 @@ Você deseja se conectar sem criptografia (não recomendado)? O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! - + The file could not be downloaded completely. O arquivo não pode ser baixado completamente. - + File %1 cannot be saved because of a local file name clash! O arquivo %1 não pode ser salvo por causa de um confronto com um nome de arquivo local! @@ -1659,12 +1659,12 @@ Você deseja se conectar sem criptografia (não recomendado)? Mirall::ShibbolethCredentials - + Login Error Erro de Login - + You must sign in as user %1 Você deve entrar como usuário %1 diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index b7ad2d1b4..298726c05 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -309,89 +309,89 @@ Total time left %5 %1 не читается. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. '%1' и ещё %2 других файлов были удалены. - + %1 has been removed. %1 names a file. '%1' был удалён - + %1 and %2 other files have been downloaded. %1 names a file. '%1' и ещё %2 других файлов были загружены. - + %1 has been downloaded. %1 names a file. %1 был загружен. - + %1 and %2 other files have been updated. %1 и ещё %2 других файла были обновлены. - + %1 has been updated. %1 names a file. %1 был обновлён. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 был переименован в %2 и ещё %3 других файлов были переименованы. - + %1 has been renamed to %2. %1 and %2 name files. %1 был переименован в %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 был перемещён в %2 и ещё %3 других файлов были перемещены. - + %1 has been moved to %2. %1 был перемещён в %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 и %2 другие файлы не могут быть синхронизированы из-за ошибок. Смотрите детали в журнале. - + %1 could not be synced due to an error. See the log for details. %1 не может быть синхронизировано из-за ошибки. Смотрите детали в журнале. - + Sync Activity Журнал синхронизации - + Could not read system exclude file Невозможно прочесть исключенный системный файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Вы уверены, что хотите выполнить операцию? - + Remove All Files? Удалить все файлы? - + Remove all files Удалить все файлы - + Keep files Сохранить файлы @@ -1347,12 +1347,12 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не может быть загружен из-за локальных конфликтов имен! - + The file could not be downloaded completely. Невозможно полностью загрузить файл. - + File %1 cannot be saved because of a local file name clash! Файл %1 не может быть сохранён из-за совпадения его имени с локальным файлом! @@ -1665,12 +1665,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Ошибка входа - + You must sign in as user %1 Вы должны войти как пользователь %1 diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index a8dfea709..568a656a0 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -309,89 +309,89 @@ Celkom zostáva %5 %1 nie je čitateľný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 ďalších súborov bolo zmazaných. - + %1 has been removed. %1 names a file. %1 bol zmazaný. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 ďalších súborov bolo stiahnutých. - + %1 has been downloaded. %1 names a file. %1 bol stiahnutý. - + %1 and %2 other files have been updated. %1 a %2 ďalších súborov bolo aktualizovaných. - + %1 has been updated. %1 names a file. %1 bol aktualizovaný. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 bol premenovaný na %2 a %3 ďalších súborov bolo premenovaných. - + %1 has been renamed to %2. %1 and %2 name files. %1 bol premenovaný na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 bol presunutý do %2 a %3 ďalších súborov bolo presunutých. - + %1 has been moved to %2. %1 bol presunutý do %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity Aktivita synchronizácie - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Toto môže byť kvôli tichej rekonfigurácii priečinka, prípadne boli všetk Ste si istý, že chcete uskutočniť danú operáciu? - + Remove All Files? Odstrániť všetky súbory? - + Remove all files Odstrániť všetky súbory - + Keep files Ponechať súbory @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Chybné prihlásenie - + You must sign in as user %1 Musíte sa prihlásiť ako používateľ %1 diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 0491ba18e..d879b38b7 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -309,89 +309,89 @@ Skupaj še %5 %1 ni mogoče brati. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. Datoteka %1 in %2 drugih datotek je odstranjenih. - + %1 has been removed. %1 names a file. Datoteka %1 je odstranjena. - + %1 and %2 other files have been downloaded. %1 names a file. Datoteka %1 in %2 drugih datotek je prejetih. - + %1 has been downloaded. %1 names a file. Datoteka %1 je prejeta. - + %1 and %2 other files have been updated. %1 in %2 drugih datotek je posodobljenih. - + %1 has been updated. %1 names a file. Datoteka %1 je posodobljena. - + %1 has been renamed to %2 and %3 other files have been renamed. Datoteka %1 je preimenovana v %2. Preimenovanih je bilo še %3 datotek. - + %1 has been renamed to %2. %1 and %2 name files. Datoteka %1 je preimenovana v %2. - + %1 has been moved to %2 and %3 other files have been moved. Datoteka %1 je premaknjena v %2. Premaknjenih je bilo še %3 datotek. - + %1 has been moved to %2. Datoteka %1 je premaknjena v %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 in %2 drugih datotek ni mogoče uskladiti zaradi napake. Več podrobnosti je zabeleženih v dnevniški datoteki. - + %1 could not be synced due to an error. See the log for details. %1 ni mogoče uskladiti zaradi napake. Več podrobnosti je zabeleženih v dnevniški datoteki. - + Sync Activity Dejavnost usklajevanja - + Could not read system exclude file Ni mogoče prebrati sistemske izločitvene datoteke - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Mapa je bila morda odstranjena ali pa so bile nastavitve spremenjene. Ali sta prepričani, da želite izvesti to opravilo? - + Remove All Files? Ali naj bodo odstranjene vse datoteke? - + Remove all files Odstrani vse datoteke - + Keep files Ohrani datoteke @@ -1347,12 +1347,12 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Datoteke %1 ni mogoče prejeti zaradi neskladja z imenom krajevne datoteke! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Datoteke %1 ni mogoče shraniti zaradi neskladja z imenom obstoječe datoteke! @@ -1666,12 +1666,12 @@ Ali želite vzpostaviti nešifrirano povezavo (ni priporočljivo)? Mirall::ShibbolethCredentials - + Login Error Napaka prijave - + You must sign in as user %1 Prijaviti se je treba kot uporabnik %1 diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index 69175f1ef..81f9b3775 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -309,89 +309,89 @@ Total tid kvar %5 %1 är inte läsbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 och %2 andra filer har tagits bort. - + %1 has been removed. %1 names a file. %1 har tagits bort. - + %1 and %2 other files have been downloaded. %1 names a file. %1 och %2 andra filer har laddats ner. - + %1 has been downloaded. %1 names a file. %1 har laddats ner. - + %1 and %2 other files have been updated. %1 och %2 andra filer har uppdaterats. - + %1 has been updated. %1 names a file. %1 har uppdaterats. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 har döpts om till %2 och %3 andra filer har bytt namn. - + %1 has been renamed to %2. %1 and %2 name files. %1 har döpts om till %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 har flyttats till %2 och %3 andra filer har tagits bort. - + %1 has been moved to %2. %1 har flyttats till %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 och %2 andra filer kunde inte synkroniseras på grund av ett fel. Kolla loggen för ytterligare detaljer. - + %1 could not be synced due to an error. See the log for details. %1 kunde inte synkroniseras på grund av ett fel. Kolla loggen för ytterligare detaljer. - + Sync Activity Synk aktivitet - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Är du säker på att du vill fortsätta? - + Remove All Files? Ta bort alla filer? - + Remove all files Ta bort alla filer - + Keep files Behåll filer @@ -1343,12 +1343,12 @@ Do you want to connect unencrypted instead (not recommended)? Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1654,12 +1654,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Login fel - + You must sign in as user %1 Du måste logga in som en användare %1 diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index 8706fe398..e171e4363 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -308,106 +308,106 @@ Total time left %5 ไม่สามารถอ่านข้อมูล %1 ได้ - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1647,12 +1647,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index e6a9e9df2..77a5e1b20 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -309,89 +309,89 @@ Toplam kalan süre: %5 %1 okunabilir değil. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ve diğer %2 dosya kaldırıldı. - + %1 has been removed. %1 names a file. %1 kaldırıldı. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ve diğer %2 dosya indirildi. - + %1 has been downloaded. %1 names a file. %1 indirildi. - + %1 and %2 other files have been updated. %1 ve diğer %2 dosya güncellendi. - + %1 has been updated. %1 names a file. %1 güncellendi. - + %1 has been renamed to %2 and %3 other files have been renamed. %1, %2 olarak ve diğer %3 dosya adlandırıldı. - + %1 has been renamed to %2. %1 and %2 name files. %1, %2 olarak adlandırıldı. - + %1 has been moved to %2 and %3 other files have been moved. %1, %2 konumuna ve diğer %3 dosya taşındı. - + %1 has been moved to %2. %1, %2 konumuna taşındı. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 ve diğer %2 dosya hatalar nedeniyle eşitlenemedi. Ayrıntılar için günlüğe bakın. - + %1 could not be synced due to an error. See the log for details. %1 bir hata nedeniyle eşitlenemedi. Ayrıntılar için günlüğe bakın. - + Sync Activity Eşitleme Etkinliği - + Could not read system exclude file Sistem hariç tutulma dosyası okunamadı - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Bu, klasörün sessizce yeniden yapılandırılması veya tüm dosyaların el il Bu işlemi gerçekleştirmek istediğinize emin misiniz? - + Remove All Files? Tüm Dosyalar Kaldırılsın mı? - + Remove all files Tüm dosyaları kaldır - + Keep files Dosyaları koru @@ -1347,12 +1347,12 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)?%1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! - + The file could not be downloaded completely. Dosya tamamıyla indirilemedi. - + File %1 cannot be saved because of a local file name clash! Yerel bir dosya ismi ile çakıştığından, %1 dosyası kaydedilemedi! @@ -1662,12 +1662,12 @@ Bunun yerine şifrelenmemiş bağlantı yapmak ister misiniz (önerilmez)? Mirall::ShibbolethCredentials - + Login Error Oturum Açma Hatası - + You must sign in as user %1 %1 kullanıcısı olarak oturum açmalısınız diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 3e7246265..303757ed1 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -309,89 +309,89 @@ Total time left %5 %1 не читається. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 та %2 інших файлів було видалено. - + %1 has been removed. %1 names a file. %1 видалено. - + %1 and %2 other files have been downloaded. %1 names a file. %1 та %2 інших файлів було завантажено. - + %1 has been downloaded. %1 names a file. %1 завантажено. - + %1 and %2 other files have been updated. %1 та %2 інших файлів було оновлено. - + %1 has been updated. %1 names a file. %1 оновлено. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 перейменовано в %2 та ще %3 інших файлів перейменовано. - + %1 has been renamed to %2. %1 and %2 name files. %1 перейменовано на %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 переміщено до %2 та ще %3 інших файлів. - + %1 has been moved to %2. %1 переміщено в %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. %1 та %2 інші файли не можуть синхронізуватися через помилки. Дивіться деталі в журналі. - + %1 could not be synced due to an error. See the log for details. %1 не може синхронізуватися через помилки. Дивіться деталі в журналі. - + Sync Activity Журнал синхронізації - + Could not read system exclude file Неможливо прочитати виключений системний файл - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -400,17 +400,17 @@ Are you sure you want to perform this operation? Ви дійсно бажаєте продовжити цю операцію? - + Remove All Files? Видалити усі файли? - + Remove all files Видалити усі файли - + Keep files Зберегти файли @@ -1347,12 +1347,12 @@ Do you want to connect unencrypted instead (not recommended)? Файл %1 не завантажено, через локальний конфлікт ім'я! - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! Файл %1 не збережено, через локальний конфлікт ім'я! @@ -1664,12 +1664,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error Помилка входу - + You must sign in as user %1 Ви маєте увійти як %1 diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index 409beeb2e..bd3f8c8c7 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -308,89 +308,89 @@ Total time left %5 %1 不可读。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 已移除。 - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. %1 已下载。 - + %1 and %2 other files have been updated. %1 和 %2 个其它文件已更新。 - + %1 has been updated. %1 names a file. %1 已更新。 - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 已移动至 %2。 - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity 同步活动 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -399,17 +399,17 @@ Are you sure you want to perform this operation? 你确定执行该操作吗? - + Remove All Files? 删除所有文件? - + Remove all files 删除所有文件 - + Keep files 保持所有文件 @@ -1340,12 +1340,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1651,12 +1651,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error 登录错误 - + You must sign in as user %1 diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 1e8fb240e..0d1a0e49b 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -308,106 +308,106 @@ Total time left %5 %1 是不可讀的 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + %1 and %2 other files could not be synced due to errors. See the log for details. %1 names a file. - + %1 could not be synced due to an error. See the log for details. - + Sync Activity 同步啟用 - + Could not read system exclude file - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? 移除所有檔案? - + Remove all files 移除所有檔案 - + Keep files 保留檔案 @@ -1336,12 +1336,12 @@ Do you want to connect unencrypted instead (not recommended)? - + The file could not be downloaded completely. - + File %1 cannot be saved because of a local file name clash! @@ -1647,12 +1647,12 @@ Do you want to connect unencrypted instead (not recommended)? Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 From 2e06b4be668b8dd55cbdb673c2763ef316725feb Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sat, 29 Nov 2014 01:25:23 -0500 Subject: [PATCH 78/87] [tx-robot] updated from transifex --- translations/mirall_pt.ts | 26 +++++++++++++------------- translations/mirall_uk.ts | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index 76b32bc72..cff0335f6 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -728,7 +728,7 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Remove - Apagar + Remover @@ -851,7 +851,7 @@ Itens verificados também serão removidos se evitarem que um diretório seja re <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> - <p>A nova serão do %1 Cliente está disponivel.</p><p><b>%2</b> está disponível para descarga. A versão instalada é a %3.</p> + <p>A nova serão do %1 Cliente está disponivel.</p><p><b>%2</b> está disponível para transferência. A versão instalada é a %3.</p> @@ -947,12 +947,12 @@ Itens verificados também serão removidos se evitarem que um diretório seja re Hostname of proxy server - Nome do servidor proxy. + Nome do servidor proxy Username for proxy server - Nome de utilizador para o servidor proxy. + Nome de utilizador para o servidor proxy @@ -975,7 +975,7 @@ Itens verificados também serão removidos se evitarem que um diretório seja re New Update Ready - Nova actualização disponível + Nova atualização disponível @@ -1006,7 +1006,7 @@ for additional privileges during the process. New version %1 available. Please use the system's update tool to install it. - Uma nova versão %1 está disponível. Por favor use o sistema de actualização para instalar. + Nova versão %1 disponível. Por favor use a ferramenta de atualização do sistema para a instalar. @@ -1016,7 +1016,7 @@ for additional privileges during the process. Update status is unknown: Did not check for new updates. - Estado de actualização é desconhecido: não foi possível procurar novas actualizações + Estado de actualização é desconhecido: não foi possível procurar novas actualizações. @@ -1346,7 +1346,7 @@ Em vez disso deseja utilizar uma ligação não codificada (não recomendado)? The file could not be downloaded completely. - + Não foi possível transferir o ficheiro na totalidade. @@ -2246,12 +2246,12 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Sign in... - Entrar... + Iniciar sessão... Sign out - Sair + Terminar sessão @@ -2281,7 +2281,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Syncing %1 (%2 left) - Sincronizando %1 (%2 faltando) + A sincronizar %1 (%2 em falta) @@ -2291,7 +2291,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Up to date - Actualizado + Atualizado @@ -2299,7 +2299,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz and others.<br/>Based on Mirall by Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licensed under the GNU General Public License (GPL) Version 2.0<br/>ownCloud and the ownCloud Logo are registered trademarks of ownCloud, Inc. in the United States, other countries, or both.</p> - <p>Versão %2. Para mais informação visita <a href="%3">%4</a></p><p><small>Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz and others.<br/>Baseado em Mirall por Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licenciado sob a GNU General Public License (GPL) Versão 2.0<br/>ownCloud e ownCloud Logo são marcas registadas de ownCloud, Inc. nos Estados Unidos da América, em outros países, ou ambos.</p> + <p>Versão %2. Para mais informações visite <a href="%3">%4</a></p><p><small>Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, Olivier Goffart, Markus Götz and others.<br/>Baseado em Mirall por Duncan Mac-Vicar P.</small></p><p>Copyright ownCloud, Inc.</p><p>Licenciado sob a GNU General Public License (GPL) Versão 2.0<br/>ownCloud e ownCloud Logo são marcas registadas de ownCloud, Inc. nos Estados Unidos da América, em outros países, ou ambos.</p> diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 303757ed1..71e3ae99b 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -1349,7 +1349,7 @@ Do you want to connect unencrypted instead (not recommended)? The file could not be downloaded completely. - + Файл не може бути завантажений повністю. From 8866494c940d1b26980ea438f095c9d88cfbb4c9 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sat, 29 Nov 2014 02:06:10 -0500 Subject: [PATCH 79/87] [tx-robot] updated from transifex --- admin/win/nsi/l10n/Portuguese.nsh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/admin/win/nsi/l10n/Portuguese.nsh b/admin/win/nsi/l10n/Portuguese.nsh index c39c93d52..4c7dd69b9 100644 --- a/admin/win/nsi/l10n/Portuguese.nsh +++ b/admin/win/nsi/l10n/Portuguese.nsh @@ -1,14 +1,14 @@ # Auto-generated - do not modify -StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar notas de lançamento" -StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Encontrados processos ${APPLICATION_EXECUTABLE} que precisam de ser parados.$\nDeseja que o instalador os pare ?" +StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Ver notas de lançamento" +StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Processos(s) ${APPLICATION_EXECUTABLE} em execução. Estes processos precisam de ser interrompidos.$\\nDeseja que o instalador os termine automaticamente?" StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "A terminar processos ${APPLICATION_EXECUTABLE}." -StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Processo para terminar não foi encontrado!" -StrCpy $PageReinstall_NEW_Field_1 "Está instalada uma versão anterior de ${APPLICATION_NAME} no seu sistema. Recomenda-se que desinstale primeiro a versão atual antes de instalar. Selecione a operação que pretende fazer, e clique Seguinte para continuar." +StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Processo a terminar não encontrado!" +StrCpy $PageReinstall_NEW_Field_1 "Uma versão antiga de ${APPLICATION_NAME} está instalada no sistema. É recomendado que você desinstale a versão atual antes de instalar. Selecione a operação que deseja executar e clique em $\"Avançar$\" para continuar." StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar" -StrCpy $PageReinstall_NEW_Field_3 "Não desinstalar" +StrCpy $PageReinstall_NEW_Field_3 "Não desinstale" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Já instalado" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Escolha como pretende instalar ${APPLICATION_NAME}." -StrCpy $PageReinstall_OLD_Field_1 "Já esta instalada uma nova versão dfe ${APPLICATION_NAME}! Não se recomenda instalar uma versão anterior. Se quer mesmo instalar esta versão mais antiga, é melhor desinstalar primeiro a versão atual. Selecione a operação que pretende fazer e clique Seguinte para continuar." +StrCpy $PageReinstall_OLD_Field_1 "Uma versão mais recente do ${APPLICATION_NAME} já está instalada! Não é recomendada a instalação de uma versão mais antiga. Se realmente deseja instalar esta versão, aconselha-se a desinstalação da versão atual primeiro. Selecione a operação que deseja executar e clique em Avançar para continuar." StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} já está instalado.\nSelecione a operação que deseja fazer, e clique Seguinte para continuar." StrCpy $PageReinstall_SAME_Field_2 "Adicionar/Reinstalar Componentes" StrCpy $PageReinstall_SAME_Field_3 "Desinstalar ${APPLICATION_NAME}" @@ -40,7 +40,7 @@ StrCpy $INIT_NO_QUICK_LAUNCH "Atalho de Início Rápido (N/A)" StrCpy $INIT_NO_DESKTOP "Atalho do Ambiente de Trabalho (sobrepõe o existente)" StrCpy $UAC_ERROR_ELEVATE "Incapaz de elevar, erro:" StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Este instalador precisa de permissões de administrador, tente novamente" -StrCpy $INIT_INSTALLER_RUNNING "O instalador já está a correr." -StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este desinstalador precisa de acesso de administrador; tente novamente" -StrCpy $INIT_UNINSTALLER_RUNNING "O desinstalador já está a correr." +StrCpy $INIT_INSTALLER_RUNNING "O instalador já está em execução." +StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este desinstalador requer permissões de administrador, tente novamente" +StrCpy $INIT_UNINSTALLER_RUNNING "O desinstalador já está em execução." StrCpy $SectionGroup_Shortcuts "Atalhos" From 119a9983a9f3bea36a62464f9374ad86b1966f63 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Sun, 30 Nov 2014 01:25:22 -0500 Subject: [PATCH 80/87] [tx-robot] updated from transifex --- translations/mirall_nl.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 34e155ca4..4c4b2f819 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -2405,7 +2405,7 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Server &address: - Server adres: + Server &adres: @@ -2454,7 +2454,7 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? &Do not store password on local machine - &Geen wachtwoorden opslaan op de lokale machine. + &Sla geen wachtwoorden op op de lokale machine. @@ -2464,12 +2464,12 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Enter the url of the ownCloud you want to connect to (without http or https). - Voer de url in van de ownCloud-server waarmee u wilt verbinden (met http of https). + Voer de URL in van de server waarmee u wilt verbinden (zonder http of https). Server &Address - Server&adres + Server &adres @@ -2585,7 +2585,7 @@ Wilt u een onversleutelde verbinding maken (niet aanbevolen)? Filesystem access error - Bestandssysteem toegangsfout + Toegangsfout van het bestandssysteem From 714599aeaaf95af82a36cf44f2324a59d9d29e5c Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Mon, 1 Dec 2014 11:37:06 +0100 Subject: [PATCH 81/87] Refactor generic settings dialog - move items on top like on Mac OS (right is free for accounts now) - The account icon no longer reflects the current status (in prep for multi-account) --- resources/accounts.png | Bin 0 -> 4378 bytes src/gui/owncloudgui.cpp | 5 -- src/gui/settingsdialog.cpp | 107 ++++++++++++++++------------------ src/gui/settingsdialog.h | 11 ++-- src/gui/settingsdialog.ui | 29 +++++---- src/gui/settingsdialogmac.cpp | 11 +--- src/gui/settingsdialogmac.h | 1 - 7 files changed, 71 insertions(+), 93 deletions(-) create mode 100644 resources/accounts.png diff --git a/resources/accounts.png b/resources/accounts.png new file mode 100644 index 0000000000000000000000000000000000000000..ea983a2a46a143ad417e07db30895d7d138ec3d1 GIT binary patch literal 4378 zcmV+#5#{cQP)WZ6|+>zsS5%4NIV-7}q@jGRfQaUO!hki;Z} zL<*IJL<$iiNVFgbi5J8#;|V0-1$YP_oj^h&O-lp_h>0Uw!TE6d(__1;ZrywK;^CZg z>sGbhZM!`YR~l*h*8N(0uf6x$`y5jee%=R3p7xu5&L33#JYLcPOaK^-Mm#(`BmhjO zQw|0L0l@nDx=3aN2zd7m!gure2{=ci5%>1?{CGTe!{N|Rr+q&dR6c~zGQoSV>2w+f zgFzUN$6+`e+UDkFxO?}m@GctTT`@ogzP-KeA3pR&S%z{rtOp^4zN9{Y9?6oVM`VR0 z1xYo@ie%-zua1w8tLxXV*CB-Fd*AzBNY`EJ2VbfIy1)UH)9G{oU{%t(_kLZ{y2K9v zcmvQC66=x%0LK#FA@x+keSmvFI3jsS@=(%vFc?e$)R%3DOUnTyIU0@J?(S|;*Y!#W zVI9CV$-PSIlVyLazicv&O7v;i{sgM)*<_kLqGv)7!%n*jb8(E9+C z3A6)5fXm>!SziDJNQee$(tk4m|4rggC4E1H@USR~gN==i>fXJ3Cdn@R{V!vHE_eXf z%lcQQoci~iuu(UILL+APDY>sY5-LL9|QU`lK)iK{-i|j#Mf5rncz~oNNXo#Y*Gb8&#gLc)0%9~G zdjMVm_(x{=jj{}{m1TM5=;)|78jalZ#MSeTmq~)$-Q6vQ!{J)f;5{V2Ea58>`sul@ z3p@i$z=785EpWwT7|#QijRg_};M08r62A*zT-WtCy!XxS?rs239jwa&90LARe)aw&?md#^YzPg2V(TKz|(J31P+-kC_<5dBuXp+3;}!<;Lm0=OxD)c zX4~7_77cd3P`GFaaBpv~Y?@}RX`0sn`~jc=qL*4SW{)PX8(O-@Sf6`5{uaNVCbev^ zoD|J~lqVRC%vA|r@jko?VD;fcUto!DXF1Nzfb9L_y5(9PjMx)aPZvMHs;S{e558^?>A6lAj0Q z0p@2(>eh5*kK+W-f|LN-95@USxughu4qi(}UfA(uH z(EzFRu_%fngs=ke<6ZFS=*Btb#)try;v9>>r4HS@%CM6s7D9oDq4�VS}P5iqUAq z^OVGM=YR(f9=P#%Togqykn~29wK?tC^Wq$HHgpW5Q{r6dK4g`bDnb4?MT&}n@j9U1 zbUG~_Jb2(b_guaK0HD|F`MOp?>Pk#o3+?);Wo;37rpWU744mB@lAhlUFXi7zx-~#$ zU62n*Pswz6?=$s8C4l?*f;7AE>UeA}nq# zRaKuW30_zUN^(iybZa^009)W4U>W#{bYCz;=h>b6p)@hem1d#ZTm;9tDbw%w<-Iq_ zj{!{5N2CvF%UYKW256zIb*^8i78y9OY*-qp)Gxpycy@kwhu-_(eP#WA|6GPRw*dx& zf$F*rWT+%OO}%?AQzw))EZ1{e0&V~-|K9Ozx}OWc<1=Wa3_t+b0Cpg$E{ekPfc0H7 z!20^SX0ur!IR)?|K(&O95thpuURc&L@VW8kz*BC`z!i<9e0`AANcc(9G}Uaj64uw( z&t-sf<$$Q)sqO9UW-^&fNWKN|qa=E1+CxBiPFXuwoSS9i<@;L6ED3=`BcTHLAI`by zaA?ilyLaDpDXglhnzAe>&bfPl4gt)_%!1S8>tdWgn?R$-7wOJ45V2N3Wj3Yv&78v{ z((m?qy~*+MadTcU7m~ueySt&Ps%Z$}5#as>K!rHA%Av3$xbGyA4MPY;A2dW;XWT{{*nVKrD$B;$)^F zPxSZ;%37p5V*j5Fm)H}>=JDB@k~#+PwA zS0#Lr#EOI-AlJ&Ej{J?8{p18kvU9#Go+uI~p&?O87?b*IN&iq3#X~b2@9yq47nu&f zj1n}G&F1Fj*n9uj`~IJkVMTJE1{Bf|vu#gfgSOyV%;TIgYv+F*CbR|$h~x1Jz?jt6 zNq#+q@MJt5PxkiqE(AV)!Ap+C0r2L{oBgX-uddZ~eZx8TI}$$!Xo$Eb;DPR9NO#t^ zAenR3=m@Bo@W`0(03J&Cn)m!hQ526KKYo0?zrSAr7hfv7l!XxhZf9qweDvtiD%rp8 z96l!5?~%F=pa;+cN^^sSb&=K>sZCDRgBI(&8i{p`dG}K@{FQThJB0AGs;cpifBfSb zX?k?w?|)eX0COg6Zf=%qYionLuCD-i4Z!Cl{u;?O03~1r>71EJ!gURhgi=6Dch-Pa zfO{nATW0u9ujd{+=Z=n!j;4Eido^Cd^X<1^h5>-N5w^FteN|OG@BJ_>klr+NpC;`? z05$>iB=}?i0&+>+2x~m_xo#2(_AHajpR*99|ZUw2^%DC09Ye2mGltcKEMa0{wMw$Pt1y^WPR8)&DhMU zt*x!*?%lhWvN8-@{uUXIMkBuc_S^o-l`AEHo|*L}^(DRHz5g)aUI%nNO_K@$kk|+G z8h}?~XUF%G`~iS}2h@gvd>JWB0B(DGyIha|ry>0d(#PbZVfcz=I?b`c|7$N(Aq&6_uS>+9?5X7;Lc?n{zB z3vdN7)>D}~5qS1`S}f>xh}P~E>>4CWZ&@6Hp#pGB;vYi@Z<*PX>2!L05hI-20A2ap z>s?(d%ld}*{>x@IievH!K23*`%x%Fh)4ikjmDzyUFEF*$^PV8(hZGW;0X#O-Ka={l zq{m4e&Tx*La1jHzTeof%B-e_fc-0JF0qippS4fnd(U{H#9G!-!+aX$-B`__G!y+@x z(q}hhY>v#rH;bb97Re{G*=&6O{{1sIN9SG}j3Q@sP!z>R2>7I=PXn$GppZZpo8YYH zTdF6|CGhR2s~vnSjle8!gKLcvBK@r$yr%N$CG?$hpOAFh%+{Q9y`7z%GjEwWvjIr* z&Ye31P!>g4GqX3G)0Y7Bk#>SP7vr`&{74B*Qk&sJ2A;gT035J(5)|)e9i$}X|Wr2^29^W7TD$C((gwYB9X_08-GX&*<-_~~AC z6I`D7S_eq-x^-#YdU=WN)}ed8CZq+C^lYTcfpng2cqGN?CH|uKe&yf*McTQ3>T#BK zn1_dler084;9U7jY0TvrWlk<@C)V@avSv0|?D-NKEHg))y+Y{3xuyEAWT=Jf(N3CM zv^)g2ui99LMH!*!46G9V|vm6esED2f4zHjBhGIw?F+>8S98kUipiCR5PECd{41os^9ysrPi8#4= zU4mEK{+r}$m+te#mlWFxbk_pi$$AZa(MO1;Ts zQta&PoLUK96aqXrIB@-bza;s7GnC1aZJl4F`>FC(SsJI6piK9CeWtt36WpBc^N!JS zGBvZjRmMV2wwSLvL9zkK>t$KKb8v8wH%>hh1}|j5#>R#R&@;m=0FD#^;e-|3=gC(C z&Q{iz=$;l^Te=4`TH0`BbMTNEf*B167I8X|;imV#7>~!N;ym?-9RHKa#E~o!x5K)$ zkZ}?DYD;k*7UMkj{2jV?C36x)IV>!Y3Rx?d#n4Lz$>9O#+$(kM{k3b?PR04$5I8(M z9Lg$)=|D}Sv>XcOZ8k?1-7A;#8ayEL;~Jwi`aAI1iB!Z zQ=>!x8kS{nY3CS8a#;_&Fa+wlcFu(%NteL408f&y*}Kn?uj(eaeEp&{RzOT}iSEiC zZ|NTIF(WPKgeJa|1}FeBGn63&XJ#CYM(1b1bUI}S!G*xp82gd3ma1}E%4!onKX3XHyZhx?WdgPduMONTf&(%Bnha`7c$^Wq_)x7(!rK z7Avvqa%QI7iz72!L21I!QKmn>~diI&Y}E5~^139Pdv4tW-kz$3@>+Z!<{Yk;)r(9CK8ehL7j3dBW?wys8Y zv>jdd52HGDy;XwU8G)GzSxlwGhxpE1ZL9;93L)<@nJ2#a?>X<#05s0I>1syncStateIcon(SyncResult::Problem); _tray->setIcon( icon ); _tray->setToolTip(tr("There are no sync folders configured.")); -#if !defined Q_OS_MAC - if( _settingsDialog ) { - _settingsDialog->slotUpdateAccountIcon(icon); - } -#endif } } } diff --git a/src/gui/settingsdialog.cpp b/src/gui/settingsdialog.cpp index 2bb5c4c43..00e625bd3 100644 --- a/src/gui/settingsdialog.cpp +++ b/src/gui/settingsdialog.cpp @@ -26,26 +26,35 @@ #include #include +#include #include #include #include +#include +#include + +namespace { + const char TOOLBAR_CSS[] = + "QToolBar { background: white; margin: 0; padding: 0; border: none; border-bottom: 1px solid grey; spacing: 0; } " + "QToolBar QToolButton { background: white; border: none; border-bottom: 1px solid grey; margin: 0; padding: 0; } " + "QToolBar QToolButton:checked { background: %1; color: %2; }"; +} namespace Mirall { -QIcon createDummy() { - QIcon icon; - QPixmap p(32,32); - p.fill(Qt::transparent); - icon.addPixmap(p); - return icon; -} - SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : QDialog(parent), _ui(new Ui::SettingsDialog) { setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); _ui->setupUi(this); + QToolBar *toolBar = new QToolBar; + toolBar->setIconSize(QSize(32,32)); + QString highlightColor(palette().highlight().color().name()); + QString altBase(palette().alternateBase().color().name()); + toolBar->setStyleSheet(QString::fromAscii(TOOLBAR_CSS).arg(highlightColor).arg(altBase)); + toolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + layout()->setMenuBar(toolBar); // People perceive this as a Window, so also make Ctrl+W work QAction *closeWindowAction = new QAction(this); @@ -55,32 +64,45 @@ SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : setObjectName("Settings"); // required as group for saveGeometry call - setWindowTitle(tr("%1").arg(Theme::instance()->appNameGUI())); + setWindowTitle(Theme::instance()->appNameGUI()); - _accountSettings = new AccountSettings(this); - addAccount(tr("Account"), _accountSettings); + QIcon accountIcon(QLatin1String(":/mirall/resources/accounts.png")); + QAction *accountAction = toolBar->addAction(accountIcon, tr("Account")); + accountAction->setCheckable(true); + _accountSettings = new AccountSettings; + _ui->stack->addWidget(_accountSettings); QIcon protocolIcon(QLatin1String(":/mirall/resources/activity.png")); - QListWidgetItem *protocol= new QListWidgetItem(protocolIcon, tr("Activity"), _ui->labelWidget); - protocol->setSizeHint(QSize(0, 32)); - _ui->labelWidget->addItem(protocol); - _protocolWidget = new ProtocolWidget; - _protocolIdx = _ui->stack->addWidget(_protocolWidget); + _protocolAction = toolBar->addAction(protocolIcon, tr("Activity")); + _protocolAction->setCheckable(true); + ProtocolWidget *protocolWidget = new ProtocolWidget; + _ui->stack->addWidget(protocolWidget); QIcon generalIcon(QLatin1String(":/mirall/resources/settings.png")); - QListWidgetItem *general = new QListWidgetItem(generalIcon, tr("General"), _ui->labelWidget); - general->setSizeHint(QSize(0, 32)); - _ui->labelWidget->addItem(general); + QAction *generalAction = toolBar->addAction(generalIcon, tr("General")); + generalAction->setCheckable(true); GeneralSettings *generalSettings = new GeneralSettings; _ui->stack->addWidget(generalSettings); QIcon networkIcon(QLatin1String(":/mirall/resources/network.png")); - QListWidgetItem *network = new QListWidgetItem(networkIcon, tr("Network"), _ui->labelWidget); - network->setSizeHint(QSize(0, 32)); - _ui->labelWidget->addItem(network); + QAction *networkAction = toolBar->addAction(networkIcon, tr("Network")); + networkAction->setCheckable(true); NetworkSettings *networkSettings = new NetworkSettings; _ui->stack->addWidget(networkSettings); + _actions.insert(accountAction, _accountSettings); + _actions.insert(_protocolAction, protocolWidget); + _actions.insert(generalAction, generalSettings); + _actions.insert(networkAction, networkSettings); + + QActionGroup *group = new QActionGroup(this); + group->addAction(accountAction); + group->addAction(_protocolAction); + group->addAction(generalAction); + group->addAction(networkAction); + group->setExclusive(true); + connect(group, SIGNAL(triggered(QAction*)), SLOT(slotSwitchPage(QAction*))); + connect( _accountSettings, SIGNAL(folderChanged()), gui, SLOT(slotFoldersChanged())); connect( _accountSettings, SIGNAL(accountIconChanged(QIcon)), SLOT(slotUpdateAccountIcon(QIcon))); connect( _accountSettings, SIGNAL(openFolderAlias(const QString&)), @@ -89,10 +111,9 @@ SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : connect( ProgressDispatcher::instance(), SIGNAL(progressInfo(QString, Progress::Info)), _accountSettings, SLOT(slotSetProgress(QString, Progress::Info)) ); - _ui->labelWidget->setCurrentRow(_ui->labelWidget->row(_accountItem)); - connect(_ui->labelWidget, SIGNAL(currentRowChanged(int)), - _ui->stack, SLOT(setCurrentIndex(int))); + // default to Account + accountAction->setChecked(true); QPushButton *closeButton = _ui->buttonBox->button(QDialogButtonBox::Close); connect(closeButton, SIGNAL(clicked()), SLOT(accept())); @@ -102,23 +123,6 @@ SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : connect(showLogWindow, SIGNAL(triggered()), gui, SLOT(slotToggleLogBrowser())); addAction(showLogWindow); - int iconSize = 32; - QListWidget *listWidget = _ui->labelWidget; - int spacing = 20; - // reverse at least ~8 characters - int effectiveWidth = fontMetrics().averageCharWidth() * 8 + iconSize + spacing; - // less than ~16 characters, elide otherwise - int maxWidth = fontMetrics().averageCharWidth() * 16 + iconSize + spacing; - for (int i = 0; i < listWidget->count(); i++) { - QListWidgetItem *item = listWidget->item(i); - QFontMetrics fm(item->font()); - int curWidth = fm.width(item->text()) + iconSize + spacing; - effectiveWidth = qMax(curWidth, effectiveWidth); - if (curWidth > maxWidth) item->setToolTip(item->text()); - } - effectiveWidth = qMin(effectiveWidth, maxWidth); - listWidget->setFixedWidth(effectiveWidth); - MirallConfigFile cfg; cfg.restoreGeometry(this); } @@ -128,20 +132,9 @@ SettingsDialog::~SettingsDialog() delete _ui; } -void SettingsDialog::addAccount(const QString &title, QWidget *widget) -{ - _accountItem = new QListWidgetItem(title); - _accountItem->setSizeHint(QSize(0, 32)); - _ui->labelWidget->addItem(_accountItem); - _ui->stack->addWidget(widget); - _accountSettings->slotSyncStateChange(); -} - void SettingsDialog::setGeneralErrors(const QStringList &errors) { - if( _accountSettings ) { - _accountSettings->setGeneralErrors(errors); - } + _accountSettings->setGeneralErrors(errors); } // close event is not being called here @@ -157,14 +150,14 @@ void SettingsDialog::accept() { QDialog::accept(); } -void SettingsDialog::slotUpdateAccountIcon(const QIcon &icon) +void SettingsDialog::slotSwitchPage(QAction *action) { - _accountItem->setIcon(icon); + _ui->stack->setCurrentWidget(_actions.value(action)); } void SettingsDialog::showActivityPage() { - _ui->labelWidget->setCurrentRow(_protocolIdx); + slotSwitchPage(_protocolAction); } diff --git a/src/gui/settingsdialog.h b/src/gui/settingsdialog.h index fd35e5140..bfa8a186c 100644 --- a/src/gui/settingsdialog.h +++ b/src/gui/settingsdialog.h @@ -19,8 +19,8 @@ #include "progressdispatcher.h" +class QAction; class QStandardItemModel; -class QListWidgetItem; namespace Mirall { @@ -28,7 +28,6 @@ namespace Ui { class SettingsDialog; } class AccountSettings; -class ProtocolWidget; class Application; class FolderMan; class ownCloudGui; @@ -46,7 +45,7 @@ public: public slots: void showActivityPage(); - void slotUpdateAccountIcon(const QIcon& icon); + void slotSwitchPage(QAction *action); protected: void reject() Q_DECL_OVERRIDE; @@ -56,11 +55,9 @@ private slots: private: Ui::SettingsDialog *_ui; + QHash _actions; AccountSettings *_accountSettings; - QListWidgetItem *_accountItem; - ProtocolWidget *_protocolWidget; - - int _protocolIdx; + QAction *_protocolAction; }; } diff --git a/src/gui/settingsdialog.ui b/src/gui/settingsdialog.ui index 0f58d33f4..648b8d859 100644 --- a/src/gui/settingsdialog.ui +++ b/src/gui/settingsdialog.ui @@ -14,26 +14,22 @@ Settings - + + 0 + + + 0 + + + 0 + + 0 0 - - - - - 0 - 0 - - - - - - - - + @@ -55,6 +51,9 @@ + + + diff --git a/src/gui/settingsdialogmac.cpp b/src/gui/settingsdialogmac.cpp index d7af9b208..3711652d0 100644 --- a/src/gui/settingsdialogmac.cpp +++ b/src/gui/settingsdialogmac.cpp @@ -63,8 +63,8 @@ SettingsDialogMac::SettingsDialogMac(ownCloudGui *gui, QWidget *parent) setWindowTitle(tr("%1").arg(Theme::instance()->appNameGUI())); _accountSettings = new AccountSettings; - QIcon icon = Theme::instance()->syncStateIcon(SyncResult::Undefined, true); - _accountIdx = addPreferencesPanel(icon, tr("Account"), _accountSettings); + QIcon accountIcon = (QLatin1String(":/mirall/resources/accounts.png")); + addPreferencesPanel(accountIcon, tr("Account"), _accountSettings); QIcon protocolIcon(QLatin1String(":/mirall/resources/activity.png")); _protocolWidget = new ProtocolWidget; @@ -97,9 +97,6 @@ SettingsDialogMac::SettingsDialogMac(ownCloudGui *gui, QWidget *parent) void SettingsDialogMac::slotSyncStateChange(const QString& alias) { FolderMan *folderMan = FolderMan::instance(); - SyncResult state = folderMan->accountStatus(folderMan->map().values()); - QIcon accountIcon = Theme::instance()->syncStateIcon(state.status()); - setPreferencesPanelIcon(_accountIdx, accountIcon); Folder *folder = folderMan->folder(alias); if( folder ) { @@ -109,9 +106,7 @@ void SettingsDialogMac::slotSyncStateChange(const QString& alias) void SettingsDialogMac::setGeneralErrors(const QStringList &errors) { - if( _accountSettings ) { - _accountSettings->setGeneralErrors(errors); - } + _accountSettings->setGeneralErrors(errors); } void SettingsDialogMac::closeEvent(QCloseEvent *event) diff --git a/src/gui/settingsdialogmac.h b/src/gui/settingsdialogmac.h index 91fa60528..6774edce5 100644 --- a/src/gui/settingsdialogmac.h +++ b/src/gui/settingsdialogmac.h @@ -49,7 +49,6 @@ private: QListWidgetItem *_accountItem; ProtocolWidget *_protocolWidget; - int _accountIdx; int _protocolIdx; }; From b154e1baa1ba7a03dfe5b78bf5b71d6ccb881359 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 1 Dec 2014 12:05:14 +0100 Subject: [PATCH 82/87] Nautilus shell integration: Use fallback when XDG_RUNTIME_DIR is not defined Same fallback as in Qt5 Task #2477 --- shell_integration/nautilus/syncstate.py | 15 ++++++++++++++- src/mirall/socketapi.cpp | 5 +++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/shell_integration/nautilus/syncstate.py b/shell_integration/nautilus/syncstate.py index 93fec41bf..ca8b2b1f4 100755 --- a/shell_integration/nautilus/syncstate.py +++ b/shell_integration/nautilus/syncstate.py @@ -18,6 +18,19 @@ import socket from gi.repository import GObject, Nautilus + +def get_runtime_dir(): + """Returns the value of $XDG_RUNTIME_DIR, a directory path. + + If the value is not set, returns the same default as in Qt5 + """ + try: + return os.environ['XDG_RUNTIME_DIR'] + except KeyError: + fallback = '/tmp/runtime-' + os.environ['USER'] + return fallback + + class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.InfoProvider): nautilusVFSFile_table = {} @@ -38,7 +51,7 @@ class syncStateExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.Info try: self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) postfix = "/"+self.appname+"/socket" - sock_file = os.environ["XDG_RUNTIME_DIR"]+postfix + sock_file = get_runtime_dir()+postfix print ("XXXX " + sock_file + " <=> " + postfix) if sock_file != postfix: try: diff --git a/src/mirall/socketapi.cpp b/src/mirall/socketapi.cpp index 0e239ed81..1b382e3e0 100644 --- a/src/mirall/socketapi.cpp +++ b/src/mirall/socketapi.cpp @@ -94,6 +94,11 @@ SocketApi::SocketApi(QObject* parent) runtimeDir = QStandardPaths::writableLocation(QStandardPaths::RuntimeLocation); #else runtimeDir = QFile::decodeName(qgetenv("XDG_RUNTIME_DIR")); + if (runtimeDir.isEmpty()) { + runtimeDir = QDir::tempPath() + QLatin1String("/runtime-") + + QString::fromLocal8Bit(qgetenv("USER")); + QDir().mkdir(runtimeDir); + } #endif socketPath = runtimeDir + "/" + Theme::instance()->appName() + "/socket"; } else { From 3253cc38b219b5aa39c03e8793de8426d97b426d Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 1 Dec 2014 12:22:52 +0100 Subject: [PATCH 83/87] Propagator upload: Mark error while opening the file as SoftError Because otherwise a lot of error are shown to the user when the user deletes a directory that is syncing Task #1981 --- src/libsync/propagateupload.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index 4d37878ff..37c0f6d7f 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -153,7 +153,8 @@ void PropagateUploadFileQNAM::start() _file = new QFile(_propagator->getFilePath(_item._file), this); if (!_file->open(QIODevice::ReadOnly)) { - done(SyncFileItem::NormalError, _file->errorString()); + // Soft error because this is likely caused by the user modifying his files while syncing + done(SyncFileItem::SoftError, _file->errorString()); delete _file; return; } From f2335939099735e11cba04fa83abd94fd066bc4c Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Mon, 1 Dec 2014 13:07:44 +0100 Subject: [PATCH 84/87] Add missing accounts icon --- mirall.qrc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mirall.qrc b/mirall.qrc index afd9dce94..e4787ad2d 100644 --- a/mirall.qrc +++ b/mirall.qrc @@ -13,7 +13,8 @@ resources/settings.png resources/activity.png resources/network.png - resources/lock-http.png - resources/lock-https.png + resources/lock-http.png + resources/lock-https.png + resources/accounts.png From afee1ee1c032848e25d43577a4971a4ae2fa7e37 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Mon, 1 Dec 2014 13:08:49 +0100 Subject: [PATCH 85/87] Make all ptr-based members either const or check for their existance --- src/gui/settingsdialog.cpp | 11 +++++++---- src/gui/settingsdialog.cpp.Rbt431 | 0 src/gui/settingsdialog.h | 6 +++--- 3 files changed, 10 insertions(+), 7 deletions(-) create mode 100644 src/gui/settingsdialog.cpp.Rbt431 diff --git a/src/gui/settingsdialog.cpp b/src/gui/settingsdialog.cpp index 00e625bd3..d414c21bc 100644 --- a/src/gui/settingsdialog.cpp +++ b/src/gui/settingsdialog.cpp @@ -43,8 +43,10 @@ namespace { namespace Mirall { SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : - QDialog(parent), - _ui(new Ui::SettingsDialog) + QDialog(parent) + , _ui(new Ui::SettingsDialog) + , _accountSettings(new AccountSettings) + { setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); _ui->setupUi(this); @@ -69,7 +71,6 @@ SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent) : QIcon accountIcon(QLatin1String(":/mirall/resources/accounts.png")); QAction *accountAction = toolBar->addAction(accountIcon, tr("Account")); accountAction->setCheckable(true); - _accountSettings = new AccountSettings; _ui->stack->addWidget(_accountSettings); QIcon protocolIcon(QLatin1String(":/mirall/resources/activity.png")); @@ -157,7 +158,9 @@ void SettingsDialog::slotSwitchPage(QAction *action) void SettingsDialog::showActivityPage() { - slotSwitchPage(_protocolAction); + if (_protocolAction) { + slotSwitchPage(_protocolAction); + } } diff --git a/src/gui/settingsdialog.cpp.Rbt431 b/src/gui/settingsdialog.cpp.Rbt431 new file mode 100644 index 000000000..e69de29bb diff --git a/src/gui/settingsdialog.h b/src/gui/settingsdialog.h index bfa8a186c..5803dbe46 100644 --- a/src/gui/settingsdialog.h +++ b/src/gui/settingsdialog.h @@ -54,10 +54,10 @@ protected: private slots: private: - Ui::SettingsDialog *_ui; + Ui::SettingsDialog * const _ui; QHash _actions; - AccountSettings *_accountSettings; - QAction *_protocolAction; + AccountSettings * const _accountSettings; + QAction * _protocolAction; }; } From 2477c3914e377de42c8e5fb733d484ab0f3e0cef Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 1 Dec 2014 13:53:30 +0100 Subject: [PATCH 86/87] csync_update: Ignore a difference of time of exactly one hour Issue #2438 --- csync/src/csync_update.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/csync/src/csync_update.c b/csync/src/csync_update.c index 2934d71ab..b7eff2bac 100644 --- a/csync/src/csync_update.c +++ b/csync/src/csync_update.c @@ -29,6 +29,7 @@ #include #include #include +#include #include "c_lib.h" #include "c_jhash.h" @@ -266,7 +267,10 @@ static int _csync_detect_update(CSYNC *ctx, const char *file, goto out; } if((ctx->current == REMOTE_REPLICA && !c_streq(fs->etag, tmp->etag )) - || (ctx->current == LOCAL_REPLICA && (fs->mtime != tmp->modtime + || (ctx->current == LOCAL_REPLICA && ((fs->mtime != tmp->modtime + /* Ignore when there is exactly one hour difference because of summer time switches */ + && (int64_t)difftime(fs->mtime, tmp->modtime) != 3600 + && (int64_t)difftime(fs->mtime, tmp->modtime) != -3600) // zero size in statedb can happen during migration || (tmp->size != 0 && fs->size != tmp->size) #if 0 From fb3f5d86cfcc12a4bd916893ec17144e6d641190 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 1 Dec 2014 14:41:39 +0100 Subject: [PATCH 87/87] Fix compilation after merge --- src/libsync/propagatedownload.cpp | 1 - src/libsync/propagateupload.cpp | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libsync/propagatedownload.cpp b/src/libsync/propagatedownload.cpp index 5b34598cc..b15fe2665 100644 --- a/src/libsync/propagatedownload.cpp +++ b/src/libsync/propagatedownload.cpp @@ -29,7 +29,6 @@ namespace Mirall { - headers["OC-Chunk-Size"]= QByteArray::number(quint64(chunkSize())); // DOES NOT take owncership of the device. GETFileJob::GETFileJob(Account* account, const QString& path, QFile *device, const QMap &headers, QByteArray expectedEtagForResume, diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index 37c0f6d7f..654de66c9 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -333,6 +333,7 @@ void PropagateUploadFileQNAM::startNextChunk() QMap headers; headers["OC-Total-Length"] = QByteArray::number(fileSize); headers["OC-Async"] = "1"; + headers["OC-Chunk-Size"]= QByteArray::number(quint64(chunkSize())); headers["Content-Type"] = "application/octet-stream"; headers["X-OC-Mtime"] = QByteArray::number(qint64(_item._modtime)); if (!_item._etag.isEmpty() && _item._etag != "empty_etag" &&