From dd516ba2d3f9df9aa40b80ad2edc625b95f949d1 Mon Sep 17 00:00:00 2001 From: Geno Date: Thu, 19 Nov 2020 22:58:42 +0100 Subject: [PATCH] OrderSprinter 1.1.29 --- javaprinter/javaprinter.jar | Bin 52771 -> 54361 bytes printserver/OrderSprinterPrintserver.exe | Bin 267264 -> 267264 bytes webapp/OrderSprinterPrintserver.exe | Bin 267264 -> 267264 bytes webapp/bar.html | 2 +- webapp/bill.html | 2 +- webapp/feedback.html | 2 +- webapp/index.html | 4 +-- webapp/install.html | 2 +- webapp/install/installer.php | 33 ++++++++++++++++--- webapp/kitchen.html | 2 +- webapp/manager.html | 33 +++++++++++++++---- webapp/paydesk.html | 4 +-- webapp/php/admin.php | 40 ++++++++++++++--------- webapp/preferences.html | 2 +- webapp/products.html | 2 +- webapp/rating.html | 2 +- webapp/reports.html | 2 +- webapp/reservation.html | 2 +- webapp/supplydesk.html | 2 +- webapp/waiter.html | 4 +-- 20 files changed, 97 insertions(+), 43 deletions(-) mode change 100755 => 100644 printserver/OrderSprinterPrintserver.exe mode change 100755 => 100644 webapp/OrderSprinterPrintserver.exe diff --git a/javaprinter/javaprinter.jar b/javaprinter/javaprinter.jar index 0622ea5043a5d93e3270bad5f00cb2d6ff04a659..76d41315a71654b52002c309de4e7befae0c88f8 100644 GIT binary patch delta 12885 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 WpiLp7vqP~%S)fBfZ4LgDwEqXX53 delta 11360 zcmZ8{1ymec(=7}V+}&LVcPD6YcXxLQK0tt=6JT%;7Tk3pKyVN4?(PH<2zlgw|GWS9 zUay|jyQ=r;K2v+mnp0J0xeTr-2M%3b2@W0)1_=oXM)m7>Jvu2Y9I$GHbt_I(Lf;CjsdL^-fQ6pKjHSlEL_I-m3sN*8xAi^wUpo<=?{gAiPu$2sT zT9LYw@V~a+`9`_*iCdM>a;{9J<@Vn8U}AjrX^b_L4Vd|k6Znu5=0%7^eBC3yPeJ&8 zTK4GTHtgzgGz$5H1131!6Sw^90=L-46rRFIZG7<3Fz(;}}*3&p0EF8L|( zokY5{2=Hk!SbmK=rD9_9cwV=bsOp6fQ~H_%h%crUToJ%z$sU;>ytpe$vM(9Xg%Wv2 zaeXA$tb!*GI{g_}7b%-U)F3SGJVd&-#CZ#^AW2`q%?GbY zmi=b<(6WMXnoLkHJC|4{YgF0dyXo}c`0%wku>7w3;cMo&G7gY(yyG&@>$}*Y#2=vt zanq39@?Ds;*nJXXz`RHw+_qnDd`Y~_Ed#A(#`Rp9HR!vcRZlz-i6{VHv#6be?9^pr zs&O{D7+z5?i;KsnCbXlaMyaQ9FqR~wZF^QDTr=#(m&ew-_$e^H|G-@>pIUv{Rkk)@na@l#%u@+rC~Xt%EJ)CGvQeb(RGT$Kr%@wk}_oM2k#e%*u>l<^6!jT z7W6O3;~*w=eLH%s)4qE5+N3Ei^jQRk2NKVGRa$C+LdLKa=#Owd1C2^d*zp<8Mi}s< zGPlj$Y1yE<oF5a;o8`v*84(jc9Ip1onm7Jg1&{z(y}#6l4*_SC%&MCL5Ut7#>aQ;kbx9yy; z*Ei?kK2xt8RmRM6H_$2gQ3wc6D`-xajDkn(83)#N040;_rL)~y;(H8-w+C32xlj8G zPlCR)8SNUG-$FBvesMi(fJhA1X5nP+H}Rq+zF|KR6rCol`(p?6Q{{NS97@08cU;6MiECzEd8z9iodWi8IutY_2+gIf!c)0T@gNaR8l9!kf?7d zw%XH4L+mI&x3uchmF2$zY{41=eEU)$*+uL*%J-P*ntio z<*fUtK3i4r5h3deiRkZUxdUxW!e{I`$&{C>*^lU$mhj@2Jo%{CsU#J!QawAg6y|VN z`)1M)Ry{4~sd>Oc$SrI3 z_nAp(*$}k70P@Qo(;Fs*L6?>?Mi6IUVQPbQ+X-T)QeVOxD|;OJnY>WLsb8zG=Z-HW zvV6@-P60acpo*|-8aJE89q~5Zr!u&iJvIQ}@skRC=5`%e{u())D$p->^^&u&J=J+Nby=D% zm-{Jeb;7!$8BN|@yU$AW2MCp3m|_UGe~nIZJ0&$yj0xm3ocSe^8qG;i?$)YASndk1 zmW9hot>RI=xmLwkBHGS72xX`}(qyWoZ~0dLLaeqelAv;G-0LwuN{x_EuD%d_cx^ze z*Q8Xhu)ZL?e?sWfNhd1~VbkPNg8uL)=h#K{e9OK1y}iIl?l(QT87Pg$MP6|EGr;>Y z(Nis@BVl_+kizZ?oqV&uRbN3i7bx)~YiDU_y0HFo3m<(GAE_&|27I~wZlQ;{cHLX!91T`I0x#)#U;hnK9`x0F85$e@62b zotZ!N+1>^+h)bT(%cl7#rJB#5FDX7b+#j03L2xC>Y@A}&h8k-@Q7JQ}MrdbmX>rZ> zzN&)Vv4j?1D5<|U(Z`79DZx3}4N8hjpi0-98A3a)WZbDtq}9?q@hMclIL_9C;nd7Q zrpiyQpv%{}8zX@SKY6pml~peLV$L-#jaC8kf~hV_Cm*M>&8OcGzgC;Z!l+!<--tXcL@9!RQ?}P)V!D$3c5{e1l2_HO)~_! zMoc8Vpc9Qt+Zi}>@dxA3_OiFAs)s{;Ql@`Sy(j`7x9bp{Qilk)q=u{{4mqTd2v+jiT0Tgz7_-x{iuD4|U#gfOI zg=}4Kl`&Fu9dtG<&g`!df;cQ@H12c^?>2%3L0hDQH3Xm@Gr?03$?+K2;sNPL8`hNo z+Aj2M&blT66KSu=dL`fm`wUl<^W?1jx4+h`p|>5`RKAbg{72$7)3d%1Q~Ui}>CVWD zf!t1T=30x-GFb9gjPNPQq5M7xi|VQJ6QDY(Ia&S=T|V& z`(28eLd1vNU_Xg_!t0-~;Li9xcAPtL5DxX|Z}E4v&v%-AACHZQ|BOt(1z#Laj%|x5 z6osIZlZdnMiWa=E&s`;Mtx_@b{)~7w%U4d1BIS1w>;X}7u$Fj)3@*#km(Hk+Ou6h` z(}qunB#Yjl?G%RE!KM z8!Hql!KH*Hk}HpeJzp8~@rsbE^}4^pTfTAXwI1~?Ons@6rNmuSYqL~V;n?0RfiY8@ zI-=~7nktaP;r;yjA!MtjDt?%L0RSF#f)ZGrL)RD$MCnnmN7(jVT~1&cXG-4$QX|z|PhTq#o>+*FO)U)L8g&)cT%XSZRFDeutX`1I z^*aTN_n-`CSc9IH`Y{qsP~vCpzO0aZ=GxF^_EL^pDeaTN>Kpw<0iKxFin0^@jp_;v z$%&Fjz7T0f2CduHNAg<@>93oIJJ}eE3W#Qfz5Y5@`xR6bZPXIAxvngKzHrJcSqq32 zWN-vFcr)lq#7k6-w%m2sflBl+w`+X`YHKOJNf;+u{FX-?%YZk)x#EqF)+9_z6&$Nj zjEc->{SrIU4l&2tXDji1i$Itnei~0_gKwzU_@|Lv@SQ{km^KB!$3O0qmr249-NqH1-93UaS6!%=2;sllEd zK$H85(kO$ynUK>Wpl>wDTT|9w9IludD(-3NukY{x)YWmWQfGKEG78XHhNiE za9NxtT&j@45gx;C`6c$ro!$OPU$nnTOsa)~!Hm+zOhN{OY{bg95?3E)RtGCQAgc`b zUiIM1yG8s)9^c6iSJrWe(?@=5V@M^L%lAX1V7I`*j;@XMqZ$cuU>3<*f+x6WkhZ-D zsu}qJ-*JV-Mrp+zbsLn)Mu2NrHjRVOK&Z0=1RJ}@l+45m8UeKiX!VOuzW;emH{Kwf zH}j4iGUOODyG&xzFl($Q!{t(t z9>6+Zcxca4KF)||o>LYE_oS>@%z~@5Kxh7@B;~)TN>S!&E*nLQ1W0u8wpY%haM?AB zRL`wi=3N+0S~^5LDje4SQh zFXFjimhqB|j9f)h@L7`)PTKh}LtkpqmCH1znYm*m~!3DR~47vry=)6-H2z;te z(2HI+tFE+I0rxd2eieUt%XfW-6yor`iH#gvBH}p5U(Q+ni&cMd)Bs>M)`s`z#&M#Y zu`o4IQ;NW%9GqRJTp&vQl?+x)EO|!SvPLxLaA>Pjsi1zO4!DX+%4N890Ed0yd#3Hz zdgfWus3g3-a^>20*Sp?=>wBI8LJMRti^9hgneqA+9*qJd9X&kHV~hMFaJ-G>I@rNi zMS}BXl44M_rU*6xP~xgN%G+o7wbZtV#%;j^RTnir&W23h&=hQF?&+g)>P~Tg(o-#L zm@+gLY$ll5^rhj6pS(JRVwG4;I#9f8K-_seLjfut?F0Chb6dELwKDY?RN6(Ng?_X1Lv9VjtVc8|}Va02H&Om~eS&+7Mjb zX4KbWQEq_eM2-m6=QkNYkB0!g!>NOGN~RWZ*6G%4=y*KYKofyRzMSa+@UGzEz!~h) z#3B1T&OwDVfwz^KzM>FN3TyCyudTJ*q}4>pySn6&RY%4%#P_+W>Z(gM&uzPonW7C( zEd{jjO7q!loKMMKEAe!=9Q3<)GbK>1IT0U0b9pj19^<oAR5?u!By`1;x?tOzV?$TD{ z`AeJ}bL%(!3~@qmp0^Ho(b)lQ`z_hj71jrHk(lTteoHa#LQy*-_Qke%S*Y@u`!AX~ zNp>rFKcY|SZB2OGZ;ArujYxuBy{^he7cm=B@S^$dh{UV5uY*27XDrDnzsYB^*4zox z?H&Z2lKmRH{sn&k`h-=GBwUYk!$nRx#CYUPvSeAp^V4+Fn@uoVr3>ksUkHwxlV7Zh z;G*zEN>XC%yJ|KkAJGqL(@O0D-Q@u?4E_s)t{m@0XEKg2(!lXg%KCEo1Q`a#910AU zGB&$VGO7qWjhezA2IOx%qJyP1+B!}AC8BL3e|Ca73e3!%L3tmYE;QN*eD3PN9NS1w z9Sw#t&hEF<)fHV(#|gHO&X%1q;XJ+TEOWzg`fkl2g12N=P+q^zh}pc&7}YZ9PZsnF zSK_bA;eKK063*{Gx>*}d3OFMQRGp#B!gNgi*{s;kw@l(v6P+C$zH)`&Co#Kg5X{Zb zM_$n&@^#XwgAC4gF^D0yE34KbBE?0!PLINuP}k#u0FtV<%LmZ`l8!N*gZO~J^0@%) z&8h1NR)1c4mvmoNir6C~VN(s6*^gM&E$3}B(i&{K)|=DU6*Spg5mlMBTj%HSL36`u#kl})W&<690D5(`gUqFvIcsf>OmsRK8C^800#h-x1fo3r%A=}$Af;7va3$=MMxJH+6K!3+Q<(46I z3om>q*gN`?n^F+n>gR$Nyz!6++mN5~FgXSt_8tXI$CmdN)g5kI>COtUl-x|cq1eY_ z;0)NSR^*9w%bzdhvkK$*YryKf*#LM(h?!c22Rf%81N<%w#)^wJYv7C{U3D_+GalH_ z-78$!H)bpffnj|bShGKd$!hTXevPZo6Wua_@1(Zv+hCMGz%UbIe@xZltedd{X>)?% zDrChm$mq|P;x=6QR8gi|Zj(eZNE*PKacE+YC2Odmwo6cz!jEDUR#B#oh61?;D&FW$2A%YdtiYmO2~8Z@h;JU; zlH~LFYjJe>k0cBce`OgT0)(h|7sl-_gAB;FO1v^=C%JM4$JX+(S^HUXaM62l9(Jmh zn14OrCkg_=IA%L`WB#f=TZdZ2wp=2%JQ4@yI5mvLv43uvti%Zlqefb=l$czY9qZ#e z_VwfO*Vacb6Lh77k=t=KPBhhAbg9Bp-zBw1GMo)LI<`jrT92abOaoi6A=ZHdKpT?; zYu~!sDeUTyB?ieYY53!a$^0q>zb|aD*N4M7!|hm-7AL-orU0i9DAz-7%_)KP=|$@y z#RDI%`e8$8#bQmb1%LJ9w#kc*V4o7NG3ND|dLTXZTZmHS9V+|aJPn}w_17jA<=h(} zr2K~d+M!xkvxjrDvINEE*OwB|fIAFMTxIN{?W}ec07|2XsiReCWN8L`b7vyxe#8RN!eIO)`mv118!JHG^ zyssbVD@+;%0tdDd;jiK6?b z5ula55l5ViGGeFRnx4m#l}t(P_iQXyWLjKZ=28X8L`w2~A&}>C$I|f(l^osU%o_&K zrxcB&EM;?{pK8H6VV-^HUrW17k?uyjGIVX|S7{0Qsot<}404tPlt z=5F^cGtfqt+43&!be7emgq|M{yg!k4KnuyWUs%SN`cV9Mhts$EXf1&CO%wX|3zwY! zW4%P9LFvR{VlvLpqne_H1CN75+kx8#-@LAv`n6D9g@mj_Vhf6Mp7p?K?Yv9MRV`tH#dRN?dd} za;6(M&t~U_gy|;CnN@ozY*=bbfV#<-1V%;g;m28(NUk7l6|=R5 zP_?vHxBYPVFJd*9gvC0;Uj|S|6={L7<>WqGt6?47)Y247^3EV@`K#R$9s>PUt8q3X z4kCYB8yML%S-CAlSdk%p)Tbt_-FR4rn_&gzeZhpxHQ_ja;Qm={agaFd--vg`qDbg@T5AOG>IF0dugj2 zHm$VIJM%#PrfCO+t~C-TA6yGzTKJCuTaPNs|0n?ZtH9S+1z5Qb($3}M zMeDdjX~t-1r=)u(xfXgc4Wm5L?(q{k$N1Gt zesNzdf)0|RaxxWtgDfSj%URgcm>? zVpcamh&t@%G?jLQ){ju?FV9;bXYSaMboIUlrPU=7fS&X&JI9dJA%O!g!!)nn*G?42 zcTv9g925r5iX~uVD0nCRxn~bM!dtnYE)3bRBDVq;7L=Zpm?c{jHL{>M`%?v3(Pxex z?i)WXgHMOI@&GSv^*o_Ka(%&_XPKXhxFV-?p8>I8mY1+17i8@HQ@DavaEGKp`+KGZ zKKx~Ef?emBJLfQk{k}t1Loy~@dtZ5xB3Dp^D(E9_ZkM~!RP@B*RIGY28!>Mh>zDWR z3B?)*pCY92^fxT%vf?jzhfzFYyfY)$Zz4S}J<0LQtnnTTHE7ou)N?1IEu;xNN1s{9 z=QB9A-pPzBgvIO|82gyR!mi-)0X%4PFvDbp33%MOm}yxwv8n4k_dQdPSy^x(l2QNND5oPI2s%SdS8Z5Q zq-v;Bw$L>4Q=3Gv&d~h!kBe?VEii0P@XMX9B*-Rs3kCGsw17v27B+@(s3m zz<%BSF#}tey_Y}AKi(|cMnAG~Z`Oz}nSO-V7|8jlplvnS!*GEd1^S-5#-^wBCr;Ob zWZMLb{HgWm&`mwLD*C1E?+MLzfgvM3(hj(gUtgtTe~z3-BZTm?DzfHiT6KUiyg@jE zG175WF?4*SILmDJ@|IB|^^A^f**_bn?FB65mfWlbo#(aDMGz*{`$lA_j(#BS!~o#2 z=CGwQf)LAA)1&+0W3_Y?kogUF`4FPR*F6aPJRYmSf=hHR7J~~@(6kowR>_gN8&75~ z4DrC00#9Q>zF0mRx}uUgdXVv5&5%5|Sa6sJps`YZ;%oX& zmLPBh>CP5ihG6Hqo*Dxshff#=fUq`8a3t+Yfx5G_T9 z7)QbEV|`Fql!&~_vFuMlD%?M`fRaAr#&IvBUp6V5)w>jHW4}nq_i}oEw6gbpbgo$G zq(#89TFGDWT3B*INQ+n5ngYr82{l!zdid!N4ZRU;vdkhAzq1u=`Y}BC8SWD&*VxL3 zF~ZU;lc09qJuP91)bq+ZF`UNncN0#6!Yr3@w;nP#A;w#07Sa09HMkI^lR)nrNw?Tv z-X5#h3mOtZW{}_d!hf3e9an|EG#hW_)WcDYL03o^!Q0H_`QK)%0;@q`=A2Fm3T)Ly zp@ui{U^{wxp)h_%@lS`mLDaYW^&bbgi+AH5ag_AvGKq{+_%oW*#rXPX@6rv*=HHdu z=rgn3rX1{6K0>2v(OGssEF3>ZbvoLQj+*PsjkJ0P8AUn0W#I>;m*Y;q_X)z}nCdVu zrj?3oop*Tbny1rJ%_9UoxJCEhdZ4HtuYdA>)+aAKlIA^9BDxv8(;}CEJiw6}sSk&l zAxUC%m+jJbj?)6*#7^RfCz7yTB@;A%vkHeKY;t~izN4`yE~@n1J6h2dK%~T8+7dN>O7ln%)d~5$4OX*R^s`~=DilJcR4_hPAGHU0;Cg$%VB@O zAjiiyZuoFeQsxzE%(Oqr_CiQHYg-xPZGVpZ(Erd!xX4YtBXY7SVkP#ElXEbW2o%lE z#V2$8=>26@2BSz{)w=_7tt;SF&z!8kuLkc+`XR!(s+w4;63!#7iPNZkn*SYmC~^m_ z{f^Az8r>Qax~>QM!aeM;y)hhTpM=)2Acjo4ffeJzxxT&J8~s#-ZTm~+@=CBO>6$Bp zD-7k*A=wC`+N7-P$je2&dhO~?=iv7(M%uD){9FM;BS%%a(xw=vQD1r6$Ea=Zj}I@{ zw_KdQ^w<*0q%af+O{x)`aLoFu<5~$B#v~Jp7FCnSaaji?>x3%7*&gpWe^cc8#!I!^ zxpF5LPjo5+t)8SF)rV8*FD^h%$5jyRtJvO6m)1t93flcTJ07R~-8umIXFh(Rp>7rs zo)hs#KsK4Hdm2mq&vfcE?xB(g&HV7YPxEj5WqEfpMzlvGpNnoMz@jgX&z{l@#OAf4 zutOSMdv!;kw<>VB8s=;TF!{TW-aBYH4s5ELHW>N)sY6^FzL?JPPwJhilv)8?zu|51 zCy&3aQHfiqx2b1S_flls2rCIn(>x$kM9Qhu zMP(%H73X%Q%^E%SQGsJ;3_gBc|D}&c z85}BeccyEKz!jkv@wLJF2cu;x#o$m{9B67C=zf-r!jRFPN#XZ;jm5_(m__+azu(5` z0>&^>eSH3F#~+wa2JY7;-c}3XUSQf3z4Q^>-$vauOzxC0%f?khD=^@$rGPx#ceyXe!P#M+K5o9mOG|lSDOKJ+keormB z1ddxLQTJ9EdGQDD^rfLeuAJi@p(H3KyMYau_M8L6nV4AYt{O zbg0*=g?rd7ig*!@BM8hQ&^mzy=TwFdUYvbF0KcuXOVp%OsK?Ay;khx-N`fPxeL}t) z0?Og_Y*3E}g^%Njk5ht!XRIC8nU;%^K?g{ilw(qA9$9%-#ddkthu6F!9Ci(jdEfk; zvT_YcFq&qpCD!c^!=MmYiXMP?I;RE+)=n&wmL1^_szINQHu1M~?{|H@F)bas2WH?I zlJ>${b!)h1%ff`mc@4k6=Sc_x2CFfp{lIF29MLMZqFarm1aN<#ex-!mlGKaHMG0KOOCn*G6*?fQ)#s7l?iF~QxGzHdd@-jNW$4i>@tkdEC9i@2XX zLbVxfLP<kp<=Hr!ysM^w*!t z!C&e)v{ZJf&L#S-#!N&7Kx-;7PejKLS{JZ1S5#Kdb-njNvrW7;PBU#a*mm{o3dX1X zXqFjDVvTs7{El8RnmaaM*m3C_eNw2tZ_@CfBMZE3>`8IOp-<`u zTvDE|Yl7>yb$+w|oU%fFyz&VqwJ1@z_XI#$(Z^ivI$rA@Zt32J0GPDm(O+ohet()K z72mR_o>X#IdL)%`Y7iNRez`}<6Ekc8N_jn1@Qhq5Mqz}_xnKR$4CHEevs=iJ;1l%R}wqKZ=3~y_5mUhLkQ`3 zg%W=uJp^rn1@I#Q!c~9^QF?{+;D2E31V4Z&?H?$Tg9|x&y_1viYLY@YCRqTpe<2Md zcv29+mGuglAe*n=fb4&~Y~KZ7k09SB@F2B$NRW%XHxQH}lz*mF_?-lxkq6Nz=75}k zX8~;Fzw&V*TUAI9-YFJH^CbR1n6ni1A9mUl3BcgG*S6~s$TbW&+eM<@%#Qstgfn8uc}_X zdPg7ort_B4&Ra?^zfim8@zd|Vc(bBha&L|LlB(AUq2?wV)w!U@uhixGd2Wf0RD_xIQpy*Hi=*M-&Tz3UUu?@4S6CH`QE{vPc;&p@=l=SUTwO2LtKsepYK(NV*i*m6D$onG&BZhDP6gB!2v$j z>IduQ;7F5{?hG3-HCx3IGVG=pc2kVhxnwwVs#mNi_HfwQ|CkJhH|&jCjrOu+FmpB} zbywGs4NKY=_Sw>CmJoxCQ06j-v&Jf^(I56l)oca38_~>T zwo4Qm%Oc{CJE|zUzjVZFvt^?LhE<&!nDP6p7VQlCY&q)1?fL3{n~io*bnWVaa3Gpl z=2Q>Za%fxb(|q-y&6Z8dSEq!}-0f5^Nc>5~RccVlom?CrQiKuaNkmUb(QqpAW{W{b z^swIO59{d>$k2%H&4!fRwZ*HClI<-#G5<-*(QpbTR z@~j8VJJ?zv|0IEyf^X z1Tbx0kn@%eFlGFM_Gk)L*&bG7h+iPR=FG%MiHs-~voW8RW29(V%l8AIH>hRD;*vTP z9T4(l72rjxCo6ExeuG@`WcLAPKVg))|FpO!*dIIWuPrvXe|OOL9rP~_`d0`2z(GF* zT5R}I{i&I{?Zmg>R&Xv@ULj-ja^ThE;#VN5-KC#PM(&`_C^agT zBp1*ls*-!Yd`PamUu7=X&z~EE>#%-)ocmE*t_|@>I9`v8_lSv_5dDzxwEjF99e{=A{pb+C9MH7* z^otEn%25=kz$z24hf=^EN;G57jZLbSRf_T}Y{BN@{#dgmP>eZ7F2Mzx2rYg9Oizpt zu$FR~DVM~DTU05i9r5Xq_$V(C0k6EmmM8~xc*URr($#*}3h1{c*JwD(8>A?tHdn-t zroQMeS7G#76bol8hJ`a`Zwg}erXW_Ck88|saID&jYRvAi7}Wl|;yN>ewH9->h#{V8 zbW<6&d>u8&4mAZ%K#OfU9C=gZk0uVd&YwOJtU%jIfWc^}q0DRewzh48U+I&<^2O$a ze8#0qT0T&{=~KX9J(#4>XR2t%H4YomKs4CUU(J#Y@79p%%l;BrqaTyyGeG79yskvA>dEj}cfG+q>rE)7ioWdgj}4=N)b>~4QO;wP1WaK{z;WGFZc0Js?B*QA!jw%TnKUcrzQd&nC^ADVwT6XWK#(7 z>=^7O>WE0qM}1Z6ND!fSBY|uK+R{U&bzGEfqNtF2KSeB?YjRXB^mJnFNHbvt8UZyA* ze%u&HTVYRnF--bnbBg?ll8Gy6#>>L6uC6sHur4Q4OCTtdMHds%aE#b++ZkX6jLgq5 zL8s3IZfNPHbV>A2^lw`REWMmaogJkeNt(!bdIeo*wowJvZBY$fF@%gvr&ppZ=*>M= zT{|`dw60$DafdX7GJ^wH2qcqJrHElfk48KVrkbTVhCN%;D{~b!O(pYCSm877bpF1{;k@)t_#IuuKkY1DT*$s;PGH>oXmWU5qV?Og*mD!E_}_T%{}` z6B(h29k^l$VLUdhLkdu$p<{9r`&XIN=M81jTVrbm&0oQJ05Qr#h$W@l##YJcnJ`qD znpIF4!^}X7&T(}i4GE_Q>(9{|BWiYt32tK$2(D>#C`LtU6}3{sK%DP^-}tAtods4$ z3NmWj*@O;tP*eh!1u#%;0Zbq^x5+_=Ip}ak&w%|v2j^JoG@xphjKtEb^LV1dJ)C5D z=3Ddtr`z4B;{F1z=H5y1?rX*-ZRn3y;sWniaK8I|W%t&JUCX&BKQ=Ks-MKc4b zDrK>x6K#n>Zd0T#agt?=h|HKmThVkjUs?UZz|3s4ttImv%r+@}sddC)f3id;cfpfh z?odf)n&S@9J>6m6iIzKD;RMGWqHT8whdZMY{{nxg3+?a|o~Y>W4hgX`%N!qwPOeAr z3Oj(<6_yuVrOWYxGQ(*w#wjrp)xDZa>`ZwmAAJ_<5q;*(wG45E6jh)xCH30Pr7|>k zzaFh^64-#-&80j|R3@gm+e^I6RL2RTlbd?Am#dy^`N4JOIet*m+cpS?4QJ{$;V3aP zUpYots7FdO?-a`dS8(MtjV0Rx;fcy*u178tI}<6&N0Y@4OB9*zWM<~6mJzPeOf_UU zX^E(=`s85tTM$!K)G0(C}gj^6*On;A00yt`N z8_g1_PSPKvTgiZ$JYB^I!HuC{RkWMKMu8SgYuTWM%w|wacxAI06hDh$$~x3%1tOF% z1q@2#0tSts0tSu#0tQVzl2Ju>R{=G%5^+f_Wpsy(tO<5BwVu5_9}rrxVi@92xYCND zwqf}(IxubMDlZNlEriMq3@v^}>Jm6Eb|;0xd3EcMk}_^6vEXIFk;R9GNXyd zt7hs#Ae6B8EpCjw)Ti35ljL;X!Fzb4QwfxA{(BkMF{YtWnd9XyStE`ocF#oo*ZlFCgS zTr;px?&|`%Pzl${nS*PTMDDu5BbAGDuMCbSE+IW-{+K^~1hDuC=}ou<8mcmfqCzT@ z^VQXi7xTt5kN+BNSx?!+#bLs|~XqcY947~aYYL*(< zh#ol*4V2xf3Zx)+rsemI)neIS#*LO zT#CLmFb}0k%<2gWzr{Yx5vHDCZaoxg;(J@6nnfqrRk8f&sfq9z9X!EdWA)0jk&3o7 zmasf~1%{{1$Eud+Lz&IS0+(mw2FPYpMcd{v4!hIEp6#$P^7GP1JM43*{kE1_4j)6# zVrLgPTy(2$1y|lalwcB}e`@ylywq9@NIkU$onZxYo>PQTT2Pe6AhO!C7K5;$Y`Ien z1G1p#RHq2Tu%PG^rwC)Spy*_$2;;&oLKrdco#d2V?38iQiB1uQfnAM@<~l_f5U!$n zJQ?-~WP(W2Jd~xGp&}M*yAsu4jpl&#RlwW2MH#l}s@F(g4YEB%H?_^V3x*Cg2XIBV zBv&O(Z9jo*(7?SX7jFgSOL2 zouK}=OJjC4S-{N}Zu%HChsvamorCr&O?U>VFG2v()Q$0d=*FQ}^09&9*j9@w9P@qm5(M z%;Pjm+I;GG8>bGpaq8%3+Tcm zu})Fc;NeigHUdZ`=}%g)LF+ z)=76vW;a-baZ0e5X&I&rvkNH0Y@9O8 z#wo*WoHESDPj%sxVK$#K%*JU7v2jW;8#gJ#Y=Sb(#wo*WoHESDDZ^}>GR(#)!)%-~ z%*JsylE*2*Y(6CzaC9&Fh%(GBpbWEd$}ox7pCzXaxn<<}tb=xpY6^3#QGcmbs%B?^ zDW|)cG{NvjUdrS(kOisXY~E=0C?;oQF{UWn0B`8gF=7xV_S9|gI*_^@P)qj*#Im3M z8LpwWI{=HK5xpVd_l5P#;DeGGieyXOiGuW90Ckx9=g^|y!}ICinf~;4Dj5M#f05lr z-U{3eRy+7g$2pE4c@fIUv?H>%4-raWmq@k`5#H#!WIFngp&WOKtm{LBQr{(lPPOBf z_m@V5OQh2hG0}N>85$`rnXW$6@M7#V``kW6Xk59poacz3`{?}-QdJB_H?}<_#5}y9 zmr?)k-TtK?L{pmw>ZdVS$T#3DErGGI2>S0h*Is0-N#zm1cer(}bD6kK%Z#ET(CI`qwLR=-)ct zXj9y?mr=RA!^algMsIM?8y)ngK%-kM>6<{b4TE0n{D$LVq<>D+6}IZ6*GP{9ufx%9 zq_OH49WEQJ%}BR^z0I1a`f_lyWB(cl?bAUs`(Jt3%RxuG<)F*Pf78Ls^In_3FCmxGRW%R!e3axmtKAWav2h42c;t7{$f|Hwf{xnasacG>9Z;g2|ooU}9V zItTr62jhK55bZ}6_6nh+-3p=0200jah44ol+~Rn(%|UxQXv%R!IxG72ux|$)?UsWs z8?5ZVcJNB_%Cdj`k9+7iSouG3khNRmnuoE=1UXnK9W?*bIL5OByN|a!XwMKj4p#k7 z9F)pUIrFfGE*s=w)qfqrZpW(~4*KH`R`+tybf&^yN$6;|`q*WI9IXDY9lYA{YNvy` z95j2()iu35{0|N~+ARlNHps!6LI?XtQ}?5h@-1!!)|4T*T?x|;4-3M&!T8Q7eJ5~h zJkoR0F;GI!Nq18<`8skOvG6vMt_5!+X`w2?f|bHT^>Pq*J}E2{fwl(#0@f?Z{ZU74 zdk~zC0~kFE+tonFcnb%5pd&HCK_@x_lNkL4si3{I^;YvB2c6=eQyp{~qi0jKgBg8@ z&_npSpnP3=9J5(5?U&UyMh|sR+J~#O!wPgvXOy+k-GkM-WsIId0<>#U`CWTQno(}^ z3P#T&ft5CD20Aj1L>r^5xYa>VcTl?du*}gtiG^bSXQME0qh~tkLPpv090xrCsA;)5 zm)Y$6i4ICTA4`CCNft^wDhoZ;LFYN>@r<&$!yOd24yeZ5Bl4)(abzCvIEqn@)hq`+ z+CgVK=rImTn{}&a<}=DRPICknI0EgAa)ehAYG#oHdK$t3HB0?!p`^${sft9c_uu=2 zk$M<4tfv7)C#sV7sDpVhr(CP3NZ0>`yDk`7+sc+49yg_e!}C4qulz5m6=82Qa#a$HHGS#S7kMWE2JI$H2ol~x&BjP zrYnfVwu4AG2QhKD+cdE=mpP_ctal8FU2PdB95F=x7sQa}J@{a9fQb0fzNJFjEyCHY z z>u*_N`LCP~m`wFKm(4zsnM#w}1roEu-9oMuiR8PT#oi#Xs5`NUo$y+BgY)k zXfft{tHtIM+{}Z(w=<4#yEF93vBH5yg{db|C;e2uV#1%Oc00-nW;l)#otRYki3anE z(yeGe1_;+!;J8T(o$U_cKk5z@y4@if?ksn^!wSxJ++mq@mOCbY6Q*XFS!_j(YjivA z&|+)5L->!nLxpa4h)(#E=cAL{9w4dz`eE^VU4UzJEX0g!ZLU))~X1T)^ny7+ItAn96`46l2&%*x;n&LCRpQcqJ}o|C83*ioQ$$Dv4m2O-x( z$)$}DxZHlKYzZIQr!ei0daIx)^yX4m_2yDa_2wQ#k2HI;X_UIScIQ@4t|%Og+~{Yh z(NEVdW=PKx`KT%ei*xAYNBBf{|X7vHdMbp2`>&;y3^an*W z^(RMj=-_`9;S+7VSNu5vWuNbEOGY{u`^1){P<(B-i{DEQEoXx1dPFE-q_z~6fEbIw9;6??u6Kx zCdU|y^)^QA{D9;-u2vImx0-M`0)OBLO=syRxUIC|bdN~hfG*-9Y+LO7c5&$*!^(OW zmu@$DbLq~bH+O|=IJs2N4M}fdx;5#|rMr~g+}1w1r}ySkI-`w!s94-5cS)bzGy3G7 z*(Y~l0oSzWF}fA%-441d>dl?oC-=lYxhM6>J=x~s4V^3Sr`YTQ?x}rp=k>{@yRF_1 zV}$j=rF$^5w=mt0_2$x@S#K`gr1j>~{aSA>-MaPS$~V-#*jc)x>&-p3Pwu2XxfA>3 z(&pN&*ZQ82HvDe39Cmb@(VI*6I4-U;k@i?@s9#gA#fIoaN%9L!tfNy+ft(N2SRwGPtq8 zH(8R|;kZVUiGGFKXXZ6plPnv0y3i4OF`_cedkC#-F+%%k8gn~Kbl=XxS1M#*6KN-i zlAU?Zag@Y*I?B8T%TYE0M{&z3Lq-hSQ^MgXCNY<%YL;f!<_Oiu2O!GPWQn+;|w%ZY=BhmaqNp#*3 zBFwxe*1n!4hFXpgVLL)N9KqaI;0Qg(vY$8*?(|%beFYWTccp~OyHc}fC|Soi$72@7 zDC+Uhf!K+Z0>>JO^?WkGydjn;A~NSu z1(`OqDB3m%k0(~T^O9JZ8yx*a7d+UY@yEuwBt*-d>B!1 zW5@O1al8RNrLQMCB$pU$IYb14dt{H`(h6^l+T6Tj3ieS{Bd4_YwW0zEYv|_1hkKyhtoV zy=jiKB-+zi=G9t(WkW7siMD+u9KK@vRN(7kuTpdxbqtn?iRKiT=?jQla$q=^nmvweuZciSFqu^OAOta}AfX zMBC014rg&Gh$3xO-M$k2qrOt1^!2tLzMjD|*H0a1NwlZ4%u85-WkW7siMD+u9KIsH z1-{Y-+U+aRd0)+*Pr9g-olVSik9n^2wBsnzJsoA9{p?RxaP|;H+l~?rM=_cV)BR^z zw5fM{N_5`So{mzXbabTKQLgh>$5EntI?6oxI21bJ|$C(MGU${LW$#c3N61ghhg{xQ(|wurrL2c9RO0r9={1foMCW~B!sQD;2xF%GR)PrI z7sBDo{2sp0-Jta4n;rw2O5DCMeVyYA(Rp8p=(TfW3H$DV2-_FJ;mf=pzR*3W^yS?i zzEFwV7pC_(z7U--?LQJ@$`u&OIOf?;#)zG$D_ zX}!!LMm{i1^zemw_R}&VY+ne6FSuAkROSnOvwXR=hc8r;_k~t`X80@eLzC#dFHH3C zg?aX)F(PbV2!}5SPk}G!GwDm=TP0$fc~9U7F)~e#BShyNVWNj4%(EYj5n($*I2=L# z7C1uB6}W@)uLw<^T8Qs}Y?lx7t){-vbez?1V4Lo=XtxnC&>klFvZ0@Vz#%6L{msP7{G_L{eJW zxF^K?qrr!7xs&G?Y>0_%J3_d0r04oWC7CsjBP`k55n?AomLo*K5j@$q9brFaQ$pH7 z0^!>I^tcbFLfbXM<$ZY1<%m^W@3_X2y^1`N-7>RIlhFUn=5IYmD%8yc_`6*eLTw{vk4a=O82)kV&p1s9j`Buj|MaLcugxj5IaM&)-UAC~% z{1y92jO0}`_{-c55Iggs;{c1%4I}(qM$ufJuWfHFNCZ8LOF_@JgYAB;Lp1d)tzWAM z$6Xgt7JHa9Bh4&2QJ!3@7IqVfWjxjSZX!B)tpdM>yZs_|0-NN#D!ZGw{s5|P&EMpL z`+k7v#N0&09Sq`SMmt7{PX0i_DEN?q*mf|u$`q<1(}8IFjWprv52lgMN2-JTto;w? z2gK4ZkVtYLj7so0u+)oS%17Kr<}fn$5*Y0U{;DMXYm%=>zs%JhLV%L0hEP)9rOqX$ zX&pa65s`ghF({J@7}I+)4(Z7_xF=)(Jj2MGop%gNmO_92kCO#9Rh#&W3SJO1cjm){ z^g&)3ZLgA-uaO`)6YMahUbi?a@|-t_!>_EP>GgR$eLkb)x6S4@NH(<(Y=j$Cxv`Q@ zfw08o2?zDLzb$&_-n$l`sq{Y!Wom}rGIyNKs8$1XHKP?Zxv6KI>EY83a(AC`L^#pE zV-uBB@n47zetBXpab~o35ak;w?r!!gX&ACZuM&nnw3#a4@bGhYbMh95ZoO>K<4#^jGy9=l1{(fdO_sN-o_)mykZFzWTUV3Y;WNCEpHSWU0^M%*C z*)wzVmqz19NjSvS#@Pa~_($SaP?x|x`I$1Qa6bnL>V{$T!lE;UO${-Z8B`iM(# zCHZ=cCpyflLKR{t{doy`@n=FD1S|bJ?jTLL-fdm)p=&jtx7Kk#;p_n{2S{Ac zb}~|-XS*1w)Uz1ND5}!4=P}Z8FD`IxF?0mI&~YK?ZC>cu$Ov>?#0Yd;%m{RtmoNq; zl(*Zw9rxja=xz$)Z`(sYXt@lGojz#U%m}nl67Tdu3nlDMAGG8cffCBnoxW;4OL@7| zSEFaKz5wa3XDJzX`VxLUdo^PnyKzxX%M?zM)3cPAJN+<4Nx0JwQ(GBluM5%Cwz+nA*VznWFsK>F;;|7xWEfPRGwBektJ(iqlchmcpdc@e430 z6RJk|ga`8_@bJ3P$T}X~saGMByfDHu2X%GYM>EkL06OxnUd>YAd{-8Eahe&K@WtnB zp|2b0Xv^&Vxp&gB6#65O{w+YnNd1oR-xKaly-oN#1l}dEJy*Tr*ve6`9QLOh!C~9) zc#xecjy7DI>sVR6fLy>KXz&L|gsvM-Znk1x3J21EKn*^~R}BYJ$VMaeo~;8MHA}gf zSp!)$OFa<9SzQz!x+3YJlukUtpU&Nx+q@!b+v!Jkg3``LvJ-UM3HGvs592AzU3OxY z9lFw3%GtE5k^iQas)s)<4nR4^bz*~Nw8HwX1jLbMX@^}I` z^^~;FC_*4zaQ+1~Qq4XHsHMYjCa`V@CCHm-sF5ZOGCzz|7KKiF7~?iTg{+?Tq9|yj z--mQ0G#2x=C<~?j(hL&k-s(_?BX2caBKo=%DZdA2f8#viI0QIf{qi8$PjgCpm2z*c zrafuW2nlFL0l8q_QeOK;eRQAODr_EgTX z0?%mJo34YS5r0EV*ei9kT}BKX%G|S-$$8Gz=xhsA3L9a63M&CpI~;6;G0qNo0IHTQ zLBYDAeYLG2x~{%2J|gs2xV`@kKkVE0ZgE-YhiC}%NxB}qx9dgjv9tWSsjI5zHRU@= zOP9h(U|j=glil+Hgk9%w)3jrZL-+OQmk%L^#A3HAv2ILz`e#a*Re8NocjT?JY6n(PZN zj)UaB&}CobCY%)waTIaxbK}r;O=Q0x*_Q$J%TP8{t{X-rF)D%2e}m8at2p%!kqZ0} zEy|5pRi1nHtZH)@!lR9Qn*E>-;Z(%mV}DFd_KZc>i84>>6Hu6C$R)#zv*n9D#YTDv zREO4$u=~cF#r){XN!`c2UF2^ZwGL0tWYYE&I!$_Qu@8lrVlU?c8qo4%mEh3dsXYs2 zdptixi}OAIE<(PJr*qw!&T~(nJ^0A|NEiBb1rHZB_CuuOA$UvYF~*<@NyCRsqP4>j zkmS!Hn)(L{@Mq2PPt&~+VHpfcF(Mbmy6JsU!sssHp9ZE zH|vbV?>>qhQo;OTu(!c|I!o&?xG)mNGoN90!ik(8_s54R z^3W zP}xZ==BIR=IF|D8v13#(qR}63iP2Os^$j)mTakP5f*~fUit&NT*rO!^*BYIVyL;@E z)W0DdO??NbwvD5pd=FH*Lg&`+M;c=tzeFYLgtT7~+Ve!+{p}NVRU^8U$7csN67)AZ zbde|T@{mrPdL0h^q}~d8FI^IAE>pd+tsSh>8{H}^aUJgcSaT%~WFZyN7$<=gh;=+q z%B9>7uU_U(uBQY+H?Ak`SR&H$!KB%0X&y09mn77G258`sZ#gMP6@ zy=v5I^mkx(JV^>Oj6MYvM+3(uEJAu4v8`Co$w9ZB%Dg_)QRw5agjAp16xQkMAbq`6 zq||jUqM+khDz)OTW=WO<(}B50AB(|LHjt~$f%oh3+R>MVEl}l&$vA$9I<&C_0@Seh z+>U2(skcZ;>=)}KMe$CGOMNbOVM={TyvAqc}U@h|4 zdZ}EVU*2&B>%pKi0;uH`7AG zn2G~U_-TR6Si5Rtz=utWmV0GmbuFE?pF;NFXBhA+CAbE{p3Kpmhj%w&$o`xH79gF_er0#SR%5Zvb9ey3*DxmUUbKJ77dmNT`%3tTe@!DRILB(;o zl^0j^!;Uk+ZJ>$IR+GE_;`shsprO|~BUeE!jZI~sBFN)t=s6nGb(V~Wve8?1d&%?B-!R{cMKGm?Ud%S7JYkW|Wxpcti?8fYDAY}9ymYZ|0xX{M694SL$K(~F6Z=BJ%rlMR=u z4W}1YYDA@%^Ofk~2A*qJmH3x!V5Xr()@iDjh8k<#b?7Mt9#B|y0$ zi(42-RP%v=JN-4@><7%~pScL?cKQ>3Z}vmxq>jRD7Z|%m%{Spv$6yLgkgfd)!gP3` zK^jdwcA#0DjvPhZ6P&tNICUvd*hB(Wke+>yMh56OR$&N%C&2PIYjw)T?5^R~|% z(chz|EYWSfMD^^qj^y2r8PqrlOSMmvL_28Fz$%Zy^fZG2HM=p#kiMbNJ;Ycfdu8n31W&+yjNP`Vc zmV|46S*dE6A4tZN+D3z>i$FI(J(XbHyWVD){M!#x;q*wJgLn!27&UQ+@h8LD%ry?y z8!I%Kf|OWt6ei@)($pI^lDP&IpwAF!B^^I%J=L)sbdCISJ^OFy!O5d$3QsbPz}Wkp zu(`**&Ocs*eJu}|z}U+iG1s`qgH7CH=m8m0MAS9VV;FX1YpGNbKgL zw%X?kW<<|E1{pl>z;h{@e*%cYvAymu{x71CdwI)XleWR>*%&^w9BA|?PE4X4vu;sJ z6}=6ofaAtG*bu_cP22^^I=M4x`P4{nr;1eXZq%FXiX_%cd7Bb#j%Zn;GLK>a>HOf2 z)iM_ju$~D_ z4d}AXm&}C6sW8g4OP9r@y|MIUhsV z_d4hw9rRCxS|@XmibN=XB!CG8YL=L>G=5yn!ZZB`V7^*A! zwXyZepETHSxyd#ABL~7^&fm5G%B;V4AYP_kTHxWXPO$E zio+x854ng=ZdT#erR0{&6qRI-b{fNy^u!vU_AVoj%;kBF_D7;zXJMf=`}<`o!^>w3 zQ0r@k4z5mNPj(78u#W&?uD9@6D#qWq^>mKdW@feH9jmz)m2K~&bHuhkE+IT~iQ^p6 zwsVBTIm{9T&QT&be)Vt;pT2PU-<3Y1MR zkJ~@`-h_KhUrbQ@3mE7y{H5(;N+GMxdp$)c^$R3uph*VrIq=a$Z7pUN z9;=MXF;ehr4Ex!?wD2>uto|JLRItBBUsM>flKed+`&WNjR6g)3bthHYPyRqdR8qBg zoQju#-a)zH>wFV1nR@8(MKO)mCIkd45bw9O%qa4Wa5`C?e&!WRJAP#f6EOW?=clN1 zaPItdk0o|PE)sZmXxIlhFzju_V-xvuB;wEftv0v7JkzYiwqLHFXQAF9u%&9t^)u!! zO<{S%@m!4y+s2Y5ZyR21;GG9P!$*~XFEPow+Vn_^j;E_=R>SWMJ_7|ld?+X7ZMhan zr}6WGIM!XM$sN(TUkFe1!pT4D{KP$Xd1tvYBKOnI#1h;&IJdL*<8`=6kDC92>kL{u znw0t|-d120HiBc}w9x1S9wXJC{G~q|Ab<2kJ=@h210?N>ZnlsZkX%#O;3}#$*FOjE z$nd7h=S?S2Z#ccxN+)y6x*AN0NqPZT#CoBOx6A;cv@3o0@!Kq`;-gC zuU7_^BAakn-S`DU8&A(HvAx*|&SB`t4BqA7*1CW0@Wn=EDl-ravc1!nnh5u>bs3mDWqs5<9EHG9!rRZFw|-a~ zUWEoa(cOCeq3h_PYHhzp)YEvWNpG=u7d9K$!^uq~+6v^E+8BwlaJmsv>Io_Qxg-X4 zsG*j*zVtBAMTR^>Ifc&~0&K5H{+OUu^NREPnR(+$3^>t=WYaUpz{yS|nVwll7;;O` zv=hcJs@D_7uXVQ&#xHVjB#d9e-bWaG(lbvH2DkLg>x97}J@aS6_+yJN2^*mt0H!_| zXfqX;6V^i5Ai_oxHi|HM`$+b%Te}$^8sd?`XZyO(U9Al>sc6s;vQ`gREY2IUO)V2Y88SdSUU^~& zUfNr6CV#1q8JA*ZZlClrk>1CsHY&zV0bjclL2c*uKt|*fcP2kGVyl(Q}vH2A0s~l zBGN$NYG^pp9}pWFmNW#!7KV2;{H``2zHgxJh%}z;-c{wBju0E>&oH!WnoY$R1Xp!>X{RnF9{c(hGgs+2aAJuEtz8lcoG ze(|{I5}it^n9Pz-h)cL^hVp<3(I>{BdT9iDtm+q3-pB2kN7;x zW&5j$VN�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 delta 44921 zcmcJ237izw@&D^%dd{8Q+1Z_$J!e>UVb}xMMG(XTL_9&o6A*_zUZi>Vt zp{DPa#4_dLgM^Th6NT_4@3`kBS5~gPUkI&4bp_RA3|uXqNF9P}z>~Z;+vBOMyBEb_ zmp8Uf6{0E}2n8Y`S6?U)T|ERkfh6zC{?^mc#9}^gg&|fHDvE@BeW4;ttSDy67eRiS zw{kC*_j@Z1`Cup*3Hkd%K}$Yp$pV)ec%431{E5b{WGL{v#b3> zJgn6V*023zbW++E(xP&vN>GF}t0|h*6fJol8BWi2i)BFcOB&4*qFxK6FNHX3tTHruL*9s-sbF`!Q5Ry-9jGle9Q9V3w#fh6 z0z=WH7Xq=evxK&t3TwAxcfr>s0SeC1>o|qE97cKc8pd#h57e)3l9C2H0qtQOitWFI~dp%~0`a&K{j(Tx(zPi_9qa74otGX}b zi=>y>)qR#6+Lrw+U)^u9jV9%*Q^Ke3va1&){-j`){F%s}9E=VB0>O2~BeRk;oQm9; zFF}XZklO4Gsj1P((6H*xd@iz^f-8Il-mQtg`imhf8gMEGRK^QI{7RSev@_@(87|I5_R79Zw$m#(yV-DD@>z z09E8&^-qyKpd{Y*6`a(#UDVOm1c5mr^DmUB$%mlA8YE%OoB3K~FDt2Ve`6G8?<}dA zV>Hem&9~DZvzp|u2x(@U{FQlTRmg2ItMkm75GExKlfTw%0D3DsA~gN@YD`8xB@@TR z@5=lD(*aNBTU;`K11K`_Pk@J2llT;b#?FUbChH$mu9?K&MfRCc#ZZJq)q+}bC=7?a zvM2Ms$*3oW57XvvvhLC$x)FcBHJbcYmWS0C;=eJx=FG%M36BnnV=e_Q3GSqPKxB4!JY$ z;yOFKIUMnM(w$zhj9A%g!?k53klYt72WJ;>T;9n(A0Apy<2kH_Dx)*Qm7&T|#U+al znEB(6KXPp|BF{rZMRrt~N8FRG?_v>vP;Wq4&bo825$O7Sm)W-Yzr|> z^mQAhMkN#E0(#^Fk^Mv2aOoj7=P&nWKQF7yj>NUByizL7jw-Lqc9kb|_Ba@-fyXtW znou=7-WwjvAtWc;e+5d7bVX_nA?0Q6pcYL&Kxlbn-E`cg!x7W(m&pT4iEuO&jgIl6 z%7Y{qQCmEQXo*aD2wuFDX8de8Qfnq;yebsv3&pELK|pKHh}VY7K*qghj>hA@P=px% zP&r)!d45qI3+B@}9xu*wOY)d8<)gN7ONfO-u|_1iOB|pGQI15X+s@;WA-KQ19~tg7 z#xdP<%A*Yl^KMgtn~TpHK|X5)(L_BvI;q;IQk1{37OW}mkG7fuK};>iows1^pu{G^ z^Z~IU<{g|S$VIVHCRGAzOYBfce4LjEgI88zNtA(_R#891aJAfMrORv1sgY2G*F_OX zt*?k3Lw!+e+s@+IGTs1>U z&}Ar1jzJ3=!?>kSmV}6+|K#Kx9cm)Jrd8={F>*=;4^|#Pe%Y-hn@}U*Nt_Gcw0Q08 znejyD$*7Pz1;C@F=8_K?a-q3SGmuLbjf#2C_o0^SiSXYwN}@20E-!_HbV{ z1=0;Z%wz_$a|z0d7>3nI*wv)V846{{wJ~)@_KMn;;-wIfGt^*%_d@MRY3b$hn4Us` zkt0~MFhOyXlgq$wOn2KhYUK`rPtM`;er znPFfy`;BV~U4|i%Jd@g{pzGRQ@D~5cooTSTheKBG>?Aa4pgQ3r7-tD6uq2R@K$+WY zqb)W%l2J;EZqB0Q9H4TBj6_pic|2a>95Y6F`dh@El1Dcy#K*;p>=ZJDB4)yq!gR6U zjGCMw*OSYkKXn!xAv!T0VNE=brrM*%kW3Gynv|yo9q)|S+m?_=R6Rb&v_(XE??PLV z)YB4HX)IY52#;4Lvi*{o*y(UlKAbFeL}9NnZ?0*CE3{Gt!v+n~_!)`IoO)^e5kEbH zPt|V zyd6MJo{QRCn0}g!oCk7PS_ztH67g#CY0=j5^jP98rsCxJfT;@rWK8>elOX_T-=8&3 zVmOf@79p^)A3-@o-efR^s+j*6$9$%mC}uGW#k{9>s;JVv7cpUCED-=qj3WX-rF**~ z+R$RGQR&V&Owl&_-RU>rXf(M7?llM9=@0W%iyUp_8=R8;{jidug_Zu57o$pnVpfs; zeproEovj!?M!GONeRxd2h?JIkqu$h!z+$sfYjN>4RizI{1tU03s@K=#b4O?T-O444 z+J3$>I4pg6zI3P1nulr0pOc`Q#7{+;a3IoF8V`S&~NIi>absSO~z{0L?D=&aH- zLa*hDPD!pxnmVt5tY34Rimn9ZPUQe;#8e^czo9!b*QaFUVUupcDQoH~2n{nbcOW+5x z@a7w>r8bdB|5g{W^UW?`>zRDJ3;3CQ!wcE@mKU<~O)q5U+g`}F8t>Cm^-j<8t#^vM zQ`csvwd|!Q(9yN)4x&>b94g~5{}hVV8E7~k3|$veaV$c^qJW2!5E>5!JRC67I4I!Z z+?57E0S{-+l=%j)9&@D+MsOBOb3lP$jhvyukIm)KktgbtF+a8h(znn(VKFLUmztS? z;z;T`P|o|QIU%n=p<`|~QJRn)x6{mCWC1%gY$F-fjA@u~qXuo&wC*+xblh(Y!y(?S~&Hnh0k~3KXc&d zwY&@xERQd8;0qo2=??rfioaz5OXNJhz=0!|^8CXb_#_9;z0`+ZYW~v5pXBu*%x&XT z2qu4J(KH{@Dqx5V1om;CqVAti4qDETq6t1miJLlybBHq1)*xqC;|-QZgHHd598S#x z)6kN-kVHQpqX5o}!7ET#v;gnz&P6=k= zlweWaG<>R~fHKSyq71We$}kJ346|^`Fbk&)vvA5V3#Tc>!YRQlT&E1P2+A-Erwp@j z$}kJ346|^`Fbk&)vvA5V3qQ?)cQ|lLFvy_)(Or~bRt3s13!jw78_zPP4P(j3^I7+D zl*-8ikRXkhn5A;&P%w?@4w%->vy~x}*FY8w4QGj?^D6SiSDydpP-1bvjaSe3doPBIeOuq$q>Q;bZnCEBG9l(QC`Ws&3&NmtbjX$^A zvk#fO4XiHkrS6rs&AbR@pF<=whzKQXUPPC=F>EZ?^J@5>YFk=0hzR9#UX9ejL*Rk|0&@!m&L1E^lY&D7Ezk>1&`jYF zxNv{~O&<<{iv|eT%M)(J+5rOgT7?CEK0ttGABTxw3=p6h$surYUZ7IXk5QT~Q+HAv z*BQk|kB3LQMHVq1%FApDYvvLvHx2@j0T$Y4qqt95T->76$OcmycNevD1SbuhJ!@L( zF60$0)JdC91ucVyBR`<4RSE%2;m+a#GtVT!L>Hp-$C6N zN2If2a1RG}(AI7`=&-@c{&xpAkXNSt>-OxS?O^49;~;A{$2AXQhY519(r{4!sd0?$ zzZJq?+Gzg}+74FzHx3%gbz|mX4;?nh!>a#1gt(ho4sN#5Jv&%Ez(E~bU~?)Qkc75& zvyUA%$ieFW-9a3dSPo*pXQ2)U^?q}8%>WO7!a-ZR>7c^~IapKZU~MFMHyUX?+O5Dn zr5>A=P$zCzSVgS%;YUAo@?nifIwc(kC3H%94^=ZBV2&pi9$?b7-~lF0V#Nq$18!71 zd{`tT+fb|XUI3r@6mtUV$es6r)4dO)X>68!-4jh5=)ShZem1(lEpPy%_mhfAHg~d( z9%!ReZ1f;TJE_`KMz;}qFrNwO_^LY1B zjB2udIm|LrqDX<*{EMlloXjL zRWVTWkvXL?{YuI@3m`gPmAG3je4I_}^bNEtN3TIU(TPVe?BY}G$8qLn-FkS=bsnZV zaKNl%JyNAIJW@r17d%0xkrYck$l`>jpGNgMA*v@wDk7b~AvYh&7e-UR&Ett)_@c+# zoX=lb!I!qrL?@mipJTSq#;H}ze1b?Ka0?^Fbn9WZK!e(PL`rxpKGtc7Sm}yVf#Y8z zI>d;d5ifC?A)fVAn=6bh%}0i23QIrXvG~zW{lrSoAaO%I(eagq>WQaUna$t|DO*2H zKUP=?-(y&*&aAMb(o)HeuFop{}qnX+25W-`LJNg+TZu(8z7SVcq zd10pzv(~i46~40jWD+UZQ+iWjVlzy}E1WIlI^l3W5m@X`Bo?92=YLT^{J7UN%$3Gc zrFoppM5D>Li zmEw~Me=)$kBGXGYIp6jYGeh1T!uRM76`JmleK|u6__Nd*IM#5s?GDSVE_8=^LDLR(=bka<6%=h*O^tQK5G67ipr3=h=iHBE4jlD20OW(%$`MKKsN4z z?OaAHA>&sRPA)Bq26AbAG>}V6rGZ?E!ay!O(+6QwG7S`_j33CIRLHgRta@@q;V9%r z|Bf2{SUw2x;{hvxP|ml*X!m4K>YMCZPP?2I$%0p=d{b!tpx+udA!h;wP2t!^gUKe1$|FF zX~zhQ1l_qxpwh%!(@7j+dKZ;X00ql;~*cNe%@}_a8DbQd-|Z z+(EgtJ##v&8@*3kH7DEPP8*a<8@Pe8w3QpkrCr@XE^Y8kuI^|vZT1EV)4p#Y7Zckc zT-pr|ls#Zj?*7a*)<6y?Xze{v1?><9a%o>OkV~5)2iKlX`rVSqXi|6FlZX*7PJC(I z8_Zh+vC}i``Gx4jW(l+O(E!f711qrhW<*$bC021BshG!!M)O7TDWECcxGfRGcC_CL zmI@QSWN>Xi*SOji+cl!&<%RbI<~5u1E?0Qc;RxanFVD_A6u z%o}c+;tJFu@wy1!cSCA?pJ z?eJ2e6<)%PvkJXn-^U8xvb|xsfx#tqyuoyc2m}`^IKh zDmA8<7Mjy&Wo*uVT+bEFCn(YVrx@ndoBnVG$G|1p8n}eRR}6P+;Fhp?T6dVvW?PSs zIyZ$>WOx?t=NXlx8*I;r?(Z4%hMJyn1&3!uTb>aP&oCRoGaeMiW)0JWSdon_t-Gq7yP;VaRWuY|)_#J9j#q(FhMMCX0g`=8-Zsp0IC{hZ}` z7udcM-QQQ{B}`wrg2Pv$Enf+TuL~;sIZMk|D?Q&ju^>IE$nflzex6ZD`UcxGqWgQs zytwHZS8#YnwB;G$@C-}i!t|siv~!dboeyLGC{iK&8lUbQ;aulQ+fkzXJIXxkXizt5 z*sBPlEl&xDr|tbhNQ-)>qeSn~Q7SYX9piMA>wFNk&#j5k-&5vU$E94u5mKTpM+t|c z7;XiLN&5`zhC#UD^kY20h)x_OVS0$iosJPd?T+Q=NTTDdg=eeGvksWKLJd`z$BJni zV;LpfX_V;rYNtW$*@&5LvMsXE{)HBqXC1L~g{ihh+9DZirRILqDwQ~wC`=!3o0>(_ zLw<=urSX1C6y{Z$SxtnsL?Ij@$KAyYxv{aPjhW#~X+K}6#OVvuD|Oo$V&r{cqMt9! zvz}uRVfjKhe8E1iz?YN2HhlS}-*~1H!xtTs8D?l^Tx{umeirZag(TD7iu}kV zI`0b;{d{4bb%I8O;E5jlXGqgtGwihv7@%V<%!e9bvk~c7*7>BTV#jgn8C+ z84;Evb7}m+6PzRzM1@WkI4Ffr6^ZS1gy~~#M~Kcl!bCqum}eb#6M;Vz$0UydKm;7Y zroX_EBfz#MGs0tu)_%j9xaqTPABgV%EQ)#7AwE~QfGW^@iTt1Dut9h%5$$J#xasR{ z8$|cF!Mu<;QE`R4EE{rWy2AwFvBVE%vf;TEvH<}gcKUhS2GRX(Fwc4@!WG`KZ5-*a zL3qqK=tkaKCWxE<-Znw>fai9^j2D~j;2Pe_{JrHU6k6Rucr5XBzd=LX^l++y6(yQQ zbpK{B&wSdXvqXBVZR2RtYd!}j+`hB-dk#*8)+UJXL=SvP^uGnMieqhuSn?@I8c)LW z&kczmx1Pumfowb`pN$W5V`hMDxkmUNU86$FHNp+o`rnbL4{&u~r85Cz|mX9d2|iK5kggzwQc zDzsc9+;HuQey*{KzuB&_BwW+`9bXVX|3sPyxQ2mM;MzQ}ozDY^HV^aL2{q1%9b7P+ zT&pSS8*^5d3hKA4QRI8P3+tyS;xaDDe|EGCWh$pk<&P6a+m|}awGN;5tPFIL$Ejn1fgRSGwATaGv zc&x4_-0DpZ+r?S`Y0diou$#n4Tq!UelsX+CcKRdR0T!eEBK*WI)Eb$@wiX+Nqh~Rj z7xZi=*v_6MntGP@bsg>kP-A}x>Ae#C;i6nl6Q3E^%EQykED9?c&e9C^4nr_ z8w@tJ4{U@RRk^VS-$)bIV!T+PF`HWS`aPq6c7`-!IqJx1dOY2I7NbfH(6bq>Aan(z zlE^-I#u;+FHalYRk$YG1-%;SJt@z=lqy^7$=P2nj%1%*?2D~; zvZv&wFVB9uIC65t+ZXK!+{kIb{Lb+V7j?phLw;rWjlrC&M=XJm_)MzZ@Z^~JUj z+ltb$dFj6FDN7^9uaAvC>TTF@e7^8kR0r?$x`D3ADEgo=ZCvpNuN#S}cK@0#uI`&~ zX*`(!a7@k+kNjH`jKtIoMjAL3Y6j^Hq*Bcw$AMI-nR6NGz8e?#hEqDp?}m;GL0{*F zj*A$9j7 z9w@n-5h$S)?(+^Kq4~}K3$O}`Ho_$`J zqJ-@8!qnA_z!c?TpBJVm`}({vMfuj}g{kWpfhkI|J}*pdW`s;pg7ta3x8Z_*pw#KU z7eEKGj)(`Spficdr~5&mlnPa&J;H@~bvROCbtTe{U$v6F12Tz=!aT!JU#C1YW5KrO zj|7?;ctU7%bY{R)-S%R3@tGdug)4u8!myTn z1((#Tgu9ck5&k-XHwbLXZaVY$L}yQ-#ajqg?yn1{4)RcLOW5@4qa(9ke#eQU2V0bj4T8U3)hl` zfYU-?fQ5jZxrHp;m2XMRv_MxHf%%r)K`qhEmPE)-kzwa?vQy-=Q#8O%k(@z3IPFxJ zb}DhDv25AFbp@2~^bRwUXD2%QEred)9nSnlWJ6ttgpqwA&M{xa-&CzB?$plg8C{jq zo7pv8wXuPve?j%khuLLa<@(z|+ulr%!D}tF^aOf^@c!U5QVKsM2{D3ZvkbLS&QPW+ zsSteetqxFTyoz>eDbiphhL$`Fg?3(O6V^b5Q9b2GkzY&gf^;}Aeg+Ck1Ic$%j!f!MU@c8@h6brS^7;o7zHd zLr3SM#K23A``6Mr!MR%MF|HKSLf#}MW8`$m-wb0EI5gsL*j7@-C|DgFtZhw^)p!NW zz&0a7@1p8H*YE!E$DP5_!0w12vkU)S%AXrW_Mx*H=3%}uJ4i{Dz<_UciQP5tp|azh z)-(ZW6NV4yllLKpR}+7MsSB?r{wpYS$-m)x(dtlk(%EG{ql%u)Zg8Tr`0W^Nu8>;Q zszhjJqI*V2-AFHt>=*6{nBCF++)e5gVGMrmCdi`4jDB$A<&@kHs?iVGN6wA}ID&YG za`TAQrDVUH>>I)K8ewdzTpgy8GAe=3A5fHJyqyqH@?~#3E1ErYMK!(7Eu>6%lAWNQ z;2cCpAkBPX*Ld8GM5!x@+{3G5*dNV}m$V06K`n);TMMkl3nGn9ac3|iI+9WKa5oou zoA+8B*^|(zhRbGM%7LJplK|f1ENyVja0rR(+h>8%7}xGdQNGJ}BHpWc8duF}JUew| zgI-0t(5cIKoXFAL;qKqSTY6Vy6sj6eN&X#|Nb(avxpObHEcq$%jWx?^L;?2%yeO+w zigbR4g5I^b{dZnO5r`Cd(w|_IcVi5wo^(|$(Ct9w)aMW^l~yBXbRWG$O>1s*M?Lgj zGOc-tJK0OuQn#Yw9i~{v;C2qm)q;_0-B_!kQCa;@1uE%`N2e>9*( z=xtlcZ$Q!eQ(4K*vSA#=^iZ^hLlz0_6g%DS+a)P$<4LYr#}0(UoY%RRC0_bi!vgeizy;1xBG`Vho3?W}d*|{`5t9K9Qc3!K+dr1P zc7T7xwhlVD%2&33L|gt54*xE7`bS4Fl%78kJub#*8|WXEq+RiR@3Q2;_z~NBZpu|E zsLDL3qv!Kntdzkq=bvwp8{)}j0= z5TVpBV9-D_7!~Gw8IM3~%wr5fjfNGxmvNl=#%OxwpVoMeb1K+JN!|&jQOS7svGvy9 zHktp9HF+^r8fUzzF=9}4GLYy4<=xmR5AaH(b>B$e>DC!pC>-ayjt`ala8f? zgjo$Q#lId3JUF{HWbnj(ly&V6RXs)H{@}r zJWxA|)|Dx5_UbE|TBz~X`)4ZJE@yWQ588UPcxOl*|+$l#n{nMdCE_uXZ9lOJecNU(6pfQ&ZgyCXCQm*mG$GPG~~sW z59@GW*k9^T2C3@MG5p_42h0Ws%T;i8ol|!EA-mo=VD?O~O0sucStW(C&sQ@5xoBVs7$8@sATKOT6W2XBodW4tuSF-ZDk=2prX zGHG(F(jCmj3*o2{I0;EFVFp@GhWb48k|bKWlD&Q_Z!Epi%OPzP@|Mo;ZXDUE;}?Fu z9xp019=@6`veJ1gf}X-o-y98!I2L)oH#v@kT84a*o5K+nPGLRllV>Hd;>DN_G}STJ zlfq)wSEL#5N=hOPeQeOjM-_I(wimQU9ZM)lJPHH!UuWK%1ZHN@Lw}>6#>?`T^&n4h z!zYY4n%5G>yTaQDLprMIhY90d({qIJuIDYnLR9(*Vdxt*{R3ezq^67N@VllSKGUeF z1Cv+xErjtBem}x^T|S*Kv_nmwOc<@W(@O~Bvz%_iXw98pU|Xq&xdbnjM@um2g%bB6 zeCCWK8}FQQH)d~J>6gZ2A6yw9JLr6Lj2uy9Ui&6t)yMCV#Uw>9w5^BU3E84^MtSz3 zF`r&nmp$m5#EEdp=QBQ0L8nMZX`YP=e;=d>TP1jDez!?gn@ha$gp%Bb-sVrd;A=UK zuLt2|sqm{o51mt?PoyMRkLKb%`xg&2ZyUfLaNzGb@alS7<^&tZo#_EsZ4AmU(xj{k z?90Ty)QHt}2xCjAY`69>1UjqXZV$1TpUfVcDKFZOWbf4&39 zoN?bKt!Id{GoV{!Q>&8|L&23RSg>Ko2_THq_IfFM=jw8~LCVgpjOfEih!ed#$>>$^ zyL*JqZ6wr)Z+DZ;ZYI<^xE)S}$_lu%G(pc1_b1PlOag`7ti|{ajiKE5GD)}2dhmsa z7E*yPLyW{#Z3#LpHo2jjOdDR%8y?A3B!F1Po~JNi@eX~`z$MXjqp=&}4~eBWp*i@3 zSR{oQ`TS+r(BZx`em|t9+lwuGNywGn3=!jWWNBwz_HTNk_7URX&gpBxM}pE%Smn(= z50(H!vm<({>u|?Zlh`2PgG%_`7_L5O+G$C)EQ6-gdlI@+lQ;b@tDH1>Q|KUHlM)T% z^Ha@_S|8h@@07_N`V0&VU}Z&LY%&ZqwZeq2!E$Y=Riijm9KkVW=Zg?_CAV`Ge0qd@ z%4)r}!`_3Y%*&+ia5RZdW};(oKcY@EKJsFGVd(JQO7nv*CDxZiO6)I(;Oiw&h~DJ{ zZpIapZwPlfiNm_Ns(T|k zrRi|Ro2ow?0pVuQE!m+u?6N+!MIZW-LpTU_C7*z$!ZAxum`jF+Y|FV-9h3KL>c6ps z74T14y6xPmx&xh-l*~i~g<3VogCs*+GJ8qcrRPP17;V1fA6T6W-&-j@uX>6>ncr*6 zug|Wd52JX*3dHNbQTVeQjHrFf?#^>H7NSJ+P>$<^eL1IXd{jdhU5DiN~R5H zYqfDTW-3)Ps3h{mrPAja_ zj5-ZmN5|5aAGF}%fLV#ZQwK9mZAPV*M#E5ZomGkI&=V6pEHUdCUv(>yc}1^@o3Lv* z2o2*Y1|R+!1zYJ+I3TV_VXE;pM>W+rk$p+0u@%GE@{K(<~e56rXw)W=Z$;anLjcoc{I0agPdPYmaqfD7{e5I&DHwI2Irh-;V5gsy4EvCpZ zwwg*=!304vt|U^?Sg$3q9n~7C1b4aTiOURHa$=YYTB|8WLcRbWu}XVaGwp*tTZ;`{vssg`=`d$tjktP^kooo) zQT;y-sV2UGqX+kofTO1ofrrcpP}6+lapG>Z%#r^P`z^$b2;fBkzVTUG&XN7NMPdbv zFA;jp_NC1BIieX>Gmk(9k6iFXiH-i3Q5ezupC(o|`HKdf7QwuN1oY!!0m`j>LGi*NX}FFtk99c9T!$c454f{VWsJdH*GAk&V0q@1`jR zpNs*FuA4@yaIAhJ@wwOHb6+IscVDt7+FB~RqZ_-a>9RYr(NTxv5^b%-5}#ChFq}}?ojlCf3lHw z%sXy5VzzJ&dZZgWbu^Yynu|2JzW?c%lC|hYoGEeTa-AkN!w`-y1}OA!RFM8wQ&^{` zoAg;KYz;|yHFab+^|%#meC`Ak2d0}cV?2f(y`dKi|>$ZmRm)nx_&>lmu zEH6kY#ip7ToBHUUW=J(y=52N8lR{6L#-bWN8KkD^Mq$(&ny;7FKA;}nua8R2Sawl| zHWx#H8Wx+~JqDLXlQf8N(H>G1>!G+9o9E-vs>3N8BkLM49mw4irR?pM(Z!sIo!CeE z=p3Nbje~&B9q6nSwv@(E3_7swL)o1|FX63(tdJ61rh{8?1XM<7EaP~I%CIf*7>;`J z=$Aa3X?(qginFa%VLe|1-#aL%(W27lba*N-N?`ZTw4j&iV8pi6(7#>@)$Ra?=SF;vt><`d3L*l;$Y8pa!{NI=o24!UhxFQCNFUw z2olT`6MPHMCmJHIh)>j31XQ0msp8NIpZL0BHu(F;@x4zmgW*Dky$rvIQ|Y~lzJyOa z!|=o0+Ow601`^*igy79XsPJ)yZx12$qK@F+b*|h?XDh#khnje}VYfSX?h0k3PDS;@ zNoyluP%IyQom?t@F?@(}qIBNF!VsVoAmjL&P`;xQ4d4oA` zvy68H$&Uy0iJy%KsG7)(II_Vfeh>Tz@z)VT1ckTpIvvHWjbwg&BL!g!!)Xjp1gsP5 z8oL^O;@7}S#Vd`EG(IZ*74xc36g5$}8k%15_(V_B{3f5cgyBt1Z`2`-P1GGl&AZ*D zVpuaddO$NdJr{VXSio>8pdJ(xTgcP%087Qz782bC+$TP3nT;RMY9q;f#Yl4T`q32H z2SyYACSXu}I+`TMv{K;DY$g7MjDO5fw8i5=;cp}T4S+t;-bOMT0c*wcga<{%7-G#} zxF9$29Azb5&|ie_)r`Qob%}Uf5H%W47o>Z|V6m+6rBL2qIR?*4S z7r1)GLn0%3q!O$~sNSPu6_*Lgpt=#p5)s0TOl22wS*0{fhr!>8wM-6`NX^q?JyWBY zdPQ8$)V@r;jn{9J`Gc5xPi$c7Fs42fS1@%P8~mHNlBxMz_BU}gQz@oC6C0V*LE)D0 zPjL;CmvG^?ViQx>GWBn9EmJp0cS>IIqqt7UF#jyKLP$4o*{f_&k#1$`ZKk}^?M!{d zTB@acnEF~0vRB}fw@gLl2HBesL#0QVoJ^z`CGB8pI#Uy+7jrXKDMM;TkHi{Rnkl_1 za5yX?cu;0jqjHz7QjXFu5So~PpOtH33d2KPYk?ol_z4V8a$O8gobd&&^}rWHCL}hy zt^j<_MKKC#+W@N>)-xQpl_%u&9;3=M7z=aIc%vr_w8pby;yq@9Ro(mxPsAsLDiKjf((EPk-9XOwQ)&qX; zxdPDdy&A9_5cjsYmxK&sfnqWfD}EBNshA8;V0b8V<}h5!ob!sGM(GB|w=lem;gbws zWIcZ^ehxCXKcnZUxgCwyu#4dZ46kJPYlaUne462#3_oQk%1K+8VLijK3=d{_Vmb0( z6AMAC5i1$4<$_Td9&5}I5yxPY!~zUINnBmd1Br8(;)LX4NbQ!m-IAb~NgOjtPz)qN zF_6UnlwSb;OXY6^C;gImr~Ez2|G$@i1mY`(6az`@F8>sq(UC9U+}21V?ozigyqnjyG%B*R%T zYVq9I&j3@grGO{7(txXCX9F7Q&W)`Cej&?K2WjG$jNiiA?qmF6hK6&7Lr*a0X@;g< zorzftx3a%G7=Jx>5e)2#T@3g!Uc66+$;|7qO~7fAmc$n^dYHbs;uSm_zQ2Mve`F{s z-v!58Nt`gl>PqUMdWKDaA+c}e=W;|GQmL;M5pfb&5wV2f1q`odcss*CFnovMzZm+f zNPalONepK*T+HwShL5wVF&x72*9ge7VCBkr&?ongCykKF7HOYIDoGhEB?T84Kqe3Ieo z3_oEgjiOp(M%~~IA0r(~7wKe%X@(av+{ExMhEFkkli_C!U86}w86BgT+( z`;B=dx8;0gxcr@*`@{Ll?+#feip6L3*iMLEv02R^#D`%^CBzzWAE;7+{UuY+g9?k3 zNqr2eOq^>{swlb{ek}s>H8ZoG&s}|>cAL}>u3v-l3?pT|;vnrIeC&NQ*5*Xb z)SknW-OWjZI$e8BG>Xw!T~pav+AjRS@m7<%K>HXUHLY$k%5vIQ*i8Mt#h`A}KgzJ;irT5E3m8l_4}jpII2^ADz`;i!wKe=~KHNx6L_`JqXbGWBm94UuG>?>^~t@fo(}M78)9fLb=) zpbh}FNL+iAK^+b13|%~Al1o4?5q~kMUw}%9A57{tP-lv2JcuBrFZmv%^|eX8hq5lw zXHo(G0_iOAq)CkhwL*MoQm24ANBCzLS}p>$O6Vg^@(z%z#SD{r6;zMtGN~Uyohx!C zH9W9DI$!+8q>ci$M!aoOXM?&(%sj?0aRI2Gi%lkVJ*bPt+a~opP?v~$`r;I|X&1=L z#6pvjiWW$hi(5@94r+t=%%t`Mb*0$rIHTT4pso@tOll>ljpDZ^l>@a&2s$Z&h5JBV zClV(08mP_UvEy+VPKBR>>=W}&Feq1Wf%GdOPBf@$P&bOrCbbu+o5ZArEe&j58i zDA->kwlg^|U-4@cUbK$Yh>4M~cuefLjHq5QDe|NAn5bTFP)A0*@^-P%q~=D#^6$jV ztWky^zR8b^KW{LoOCvG)3Gv|-M6D6mLgzC=z7m9P`u&XX5s4k@qmdT*8A3&mxH9oX zWQ_c5p4t(aC_kU4-il0;cjT#0Q1()u`X1EFc`6W{DE}!>RYeb#UlH|ePrp(mqch|; z#GOoDDJDi|%5RB3n^ZD-iu@OGT#o7*0p2C%6i^G8GCF3LIG-tFDtkvfb&Xx`9r3b3 ziN0uu{EqmNsa{>&8C@W~E50{K@hGVGg$HR%;ilpAfryyY^CyiH^Rx#NtUQv4Fe~1m&+J1j2HWg66DxhvHpzbZ8ep^62k*7Ax zUy7FvN_?xwZj}EiW?shz#U%Aa@h`E8sb1l!xJ~{>Y%;0RihJa5#h*>drizE<@5PQ^ z8uj+6cvAjBNL!flEU0)!-YvW)wWMMPs8W+UtKtmlM^R}~y%l;NKGbn zWkrW9q`eG^2bU!6o2NdICFwP$o)Tj!Kamw_O&^)RQan-h9jMDq>ba`jpl&j$m#b98 zCB1Y#J4!mSxRX3gu8;NBeJ5+un|2|}-ec-Y#KNmU60;JSD6J?~+|pE&3RYJrUTKa= zMXKY9U%J?&YO9ASL8<-*quz+>kxEGFF{$y@dntOU^nghoTs;vBIRA}#-$c2T;j;DO z!L}Fu<TBRK(CD%NnjFEQSWl27*jFVoz+n{P{UREYZ`dcR1Q1iNi)Af6d!qGK5 zm5I`LliH`|J!L=X8>V>R$&;iD?k7p3(*HOW!cnD{ikjLpo3zzs=D37*oqk z>LaG^En;$w@YMcOIZ(%ylH47aDP#5K7@jAJ6KZk9j}s>$Tw*S8+Unq^ zTi728;lcKhj{d#_^a%y>erykg2#8~<1%S+Djo)OiSr>tTNkRki|f7# zTrq2XJb)8cNY6XvB=b7!`8#kIb||<#S>8E?&Mgq?FLN0?dKEirDY9koR~;~RGs}eB z1{0YXf19}lK4Fn&jaome}PNi+yiuKc$>8y{FB;jd7M4i#Gdhw z{zG+p*02XF`hR4850(E9>gqoo_Wyr|O}q5ncv<}4I$`9BF?JSU1SvSPqTKr4L$)3T zl*B){L%*p-{!3zCCJguuJM;sfA_iu-H%_yHA&F#6-~cx+L+M=b6|o#pV%&hTSP_>J zidfx`?~u_^c^y~Y07a_U#G*F>+I&)KaPD=KKFqk$*6ob{x1IHlEJW_moYK7C7Z~mm z&mOXPhINhNFpTBEyuh440m@<*<644nKcFOnxw~>oRIjfjRudo{^4PfH+CUW*tb%4x zNz^c24`@wc!}6tyXaa6HCyBin-;Yaa%9F%%ZCt8Dk&IIrB7SNjlf;2snIOVM+gjcv=2I*##IDA2Ix#;kN{_sv_uR7-Cq#a0tT@3|kpa z09+wWX8bUQGZ@YS?2y|D7mFC4Dd{iEAIK}EE9y>Dy=*MRuvgkzH&I#3LhAuPkgq0O zUMsy)mr}P#|EN0$@SD2Z5HMC$gfMgq2eQ$d_nzOO4NTM z_ezZn+v?v?zm<-w|3dZ3FUzVc1n75F$lun7T$6>`Q0E$g1`KC@7!U3P4STyLh)}~N zDm7`UYluv1Qo@gL5!8?6%h|3GP=pE$Col|&)eWDyzLjzf|8mWM(to=S1K+FlN-s84 z0KVA}2Yes+5c!ja;o8%XX$Blq`JmJ*ec3P*W~5BYu(W%H zUO)T|!0U#0$Xn%Gh9mg$Q^R+;ACzCI`vClxAlc5f+Qr*k`VruEv+mc!zjf>F_#+JA zX%|D2F3(oEHTjABf_zLeD$f}a78Ocr#0t+4<-8HA0IwYJbHJOx@0D&FaT%W8-8bT8rB`}%#2e_>`$lZ? zj8I-2(dX$EuR~_N_oO_yw@{9DR1nMTb1FBXGoJ3>iff#m*odNA<^FWKb}Pj z@?Ui=Qm$zXxz0pESYD*u+xUv-b%}DdRe7cEUe8M9>&6c}y-M}4Pdsat#$jKgGAUZC zP{(bRE1FhF>rwY;&sxO8?_Dceo5Fa$ym!-mh{}|vDQNw4h9>~76{n!|Y9%nV)VoDG zUvI)dQZ_Zkyj#ha;z5tn%AfIVo2tDUF!)dXx zSw8_`zo+>G&vxZ;h;EgiZ9WYCz5#rf{4sIFKOwqH7A;deTSTyh@Feh7rL869{YaV4 zoH;Gay)#5d%W4=%wG4M{l`m~M4=+8vz2)a#Nu}6Sh(ETh2j{Jp6M+8}&iO zSZ^PFhO|~J9Q`PQcMkB$@+G66@J^QR9Q_CH5cRRqJMfs5dXPr!E0B41^x@#VINIYY zGa;3h@fe!JV`vVKp#awkFnl)u=;>(8tc3?cOXhj04=eAz#o1tFXdMV(R)@uN_wQdG{vh`-bXIt+8e7*Hvz@6aF zLfyxGi_~b_3TcZN-S!9HF8P4ADV_(>MgR0Yh`CW0AeIjO4#c5tVf=LI#N?aO7U{?~ zzkj7XyDjGL5^XJG0BIPmRKKYkscaWCwQNW0r}(*ID6n@a*SD?k^s0A&(<|N6 zwhi#bhL@G|QSE5YO8JMj58>R2Nl#!FetFm@&cqy86(Gssfs0x7#XNUh%-Swy{nHq~ zT7JE?50cBrJQSd$?~rwxMrk~+8bcH1J#8NbHn55ftYQPV+atQfWND;0LmXN(Qv5>v z7BDNG1U!j3onj5}^TeHiO`;KS4D%;4oFa|{=LqH>E82^ui0ef_or2$CxYfgSF-9)I zJJbk1F7T^e^<6G_7eaTq-W6eRhDZwFWQOewdl{Z5k^C0Mw=>+uP{J>fQH$YZhV2Y{ z8E#?tu1s~WS9H2ep`Qz@@2cccPw`1^7%RI*bF1wPH~G747V`c&Ttn)sgh)dFr3V=onbG- zEey9a+{I9;VtIy>8MZU*Ww?dmc0k>&?qWi!<_ZiaGi+zr%Ww;beyG z40{=FVYr>)E{0Mq%QKwJu$`c;_A;@B;dX|*7)o)jz;H6dgW^LG?ouQPV z@D5=(nV~v_vbo-GWwGu*{cswaMIay?aBEh%ab{+)||SL5FeQtsm|N}ax0{hj(3 zHR@_{9pIYnI?Z*y>pGXJjnj_RI<%GA`P$>!k6NXBtovN|bM8;w_)~Sy0iK-a*PiD* zJ3U`}B=0cqUf!wRqr6vn@Akgs4f?8l2m2QLvc4O95Bpy5z3ThXSL)y2Kf|B)U+mxF zzuAAc{}KNm@gvEhfxQDK1y0ig=L9YZ+!lB|@ND44z#D;GfzJY3QF&2K5l#WItCI0n z5>*KChKz$2ahdBjK(BT;;QJMCV5{MuhkVQ4>Vh_O@ZooMWHcJd| z!a0pBe$8+z&S|jKzZsW9q^+H*C^p7hs7#N%E`_n0yj|IJN?uA{`BQkhBnRs?-B`uyhsRA<~_Ihf2Q(JWP5U z@NnrHz$2uR3-PN=DG4}Tngn>HG!yVBX&K~spC~JV{cz1CZ&2>I@s3Z=Yvb?h^ zwd9zN`5lXvb%~?W3p&!rE=w<3+SQRBIiJhYX4$m%m8s=jr!DGOyg(e+v1Hle_O6a; zih$(SOSkRyi1L)A84|g#A5~VCb#|rOPF>m6(J7{Pq)+dd zoKCl|+_v;F&RnYkISDmSWAQp;B6{`IPIX6YdvT~n9NPc2xq^mK7t zYTBaCuH0#_Df?CoSGZ*suJG& z)KifZ$97?ap3bsIadvi^tSK~F(u+EguT#%l-oCgKHjiJntRubcj@Oi{YozhH!~UiG zdt3E)%4T)j)UTC*oa^{j**JMIjw+VmAAT3Er0{PU{+)?`Y5eQLzteC$ypKo#I}88L z7UGt>rvK^w{hyqA-mt%}I^x-x*XN$yjYk(3kCQQz8O5eVX)Fl(ih8wKRT9E; z#nEbwt69-X_qrmjE;+mz7K5xbmdEC(2}ufu5^lqnSdbKWJV9A2atTSQ3A%+M2TNix zRY-D-h?uAJpetpyVazlrK3dgkN{=Hj9@I>CLJiV?z!$hRHnq^aE(UK|ZkDXp6uA?! zRJyA4WLE;0+y$~as-#E3T#kF86b!;p(38VvX}n&Xa9IuKc6t*s(N~qu3=l^8gD~$T z#s?{KBy$`Ud-CM?LUJaPros(1E}v0tL+MP9mXL#`Gi6_58f)56dYmU;I^KhL1sN2% zAQ$v_&5A*f3sLCV;4ymD<3a1B&=RRkYEp4m7295t)nlb`Mo_v+@cy`9X|Joa*GrC+ zb|KionrfqT4*n*ipmff*Q&cq~=?lFHQ6B1Tk;1~w*V2V*0zWuvc9)>d3n}t7HLijG zH)V|i!^UD$!Qx7+lY*$dm}*mXLwGT;GIs!OEJHS+06mfWr%MfwJdRLQIF6XaFC7nR zJlEzD5AlxkkhRkBxv`qMDEGFe9#qQx#bF5xS3=Z;#kP948kDN%QJ;H*;DvgZsBWpW z9<<~k?9kki9(AqO=q~n@uE_25sC(;k>fA*fvpE$u%xbNToe5cwBJ5=Y`xQUUjeBM!z~tD$8y6tKsph zutW@XXl@1Zt9G+{Jv~T$5B@_qJf6~?9=98wyins(-C)B|O|VAEJ?B+x>!#wB2dH!| zT`Nmu%p1LvrCJPLx(F)B75UWq;={0Hf2YrL_L58W1 zOy2l`JkDlhbZ!UUCKSY=m7!?{`B*wF_Z4^tf=8ZtirgC60ZRWf+q5C*R%?vu2BQLO zw?b{(5HKbLYOcqV`_ivoifQ+}fZDk2&Vag8;@^?efT`Y=3#xM^JRJSHSiJ?;-1Q-K VZ`XMI(rt9MRjS)2m8w5V{}28$Hkbea diff --git a/webapp/OrderSprinterPrintserver.exe b/webapp/OrderSprinterPrintserver.exe old mode 100755 new mode 100644 index 0371a59222138a6138ebcb623c9c50f0db87c816..38c5e70a7989283eb004e4f0d5f8fcfad11c47c8 GIT binary patch delta 44762 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 z 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�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 delta 44921 zcmcJ237izw@&D^%dd{8Q+1Z_$J!e>UVb}xMMG(XTL_9&o6A*_zUZi>Vt zp{DPa#4_dLgM^Th6NT_4@3`kBS5~gPUkI&4bp_RA3|uXqNF9P}z>~Z;+vBOMyBEb_ zmp8Uf6{0E}2n8Y`S6?U)T|ERkfh6zC{?^mc#9}^gg&|fHDvE@BeW4;ttSDy67eRiS zw{kC*_j@Z1`Cup*3Hkd%K}$Yp$pV)ec%431{E5b{WGL{v#b3> zJgn6V*023zbW++E(xP&vN>GF}t0|h*6fJol8BWi2i)BFcOB&4*qFxK6FNHX3tTHruL*9s-sbF`!Q5Ry-9jGle9Q9V3w#fh6 z0z=WH7Xq=evxK&t3TwAxcfr>s0SeC1>o|qE97cKc8pd#h57e)3l9C2H0qtQOitWFI~dp%~0`a&K{j(Tx(zPi_9qa74otGX}b zi=>y>)qR#6+Lrw+U)^u9jV9%*Q^Ke3va1&){-j`){F%s}9E=VB0>O2~BeRk;oQm9; zFF}XZklO4Gsj1P((6H*xd@iz^f-8Il-mQtg`imhf8gMEGRK^QI{7RSev@_@(87|I5_R79Zw$m#(yV-DD@>z z09E8&^-qyKpd{Y*6`a(#UDVOm1c5mr^DmUB$%mlA8YE%OoB3K~FDt2Ve`6G8?<}dA zV>Hem&9~DZvzp|u2x(@U{FQlTRmg2ItMkm75GExKlfTw%0D3DsA~gN@YD`8xB@@TR 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 VZ`XMI(rt9MRjS)2m8w5V{}28$Hkbea diff --git a/webapp/bar.html b/webapp/bar.html index 67922d4..9960888 100644 --- a/webapp/bar.html +++ b/webapp/bar.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/bill.html b/webapp/bill.html index 82f1a7d..43796df 100644 --- a/webapp/bill.html +++ b/webapp/bill.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/feedback.html b/webapp/feedback.html index fa2a54e..00d5de3 100644 --- a/webapp/feedback.html +++ b/webapp/feedback.html @@ -4,7 +4,7 @@ - + diff --git a/webapp/index.html b/webapp/index.html index 5bf2afe..5958fd0 100644 --- a/webapp/index.html +++ b/webapp/index.html @@ -7,8 +7,8 @@ - - + + diff --git a/webapp/install.html b/webapp/install.html index abfd1bf..671a065 100644 --- a/webapp/install.html +++ b/webapp/install.html @@ -679,7 +679,7 @@ $(document).ready(function() {   - +   diff --git a/webapp/install/installer.php b/webapp/install/installer.php index 81ae371..e6f1a11 100644 --- a/webapp/install/installer.php +++ b/webapp/install/installer.php @@ -1115,6 +1115,30 @@ return false; } } +function updateUserTable1128_1129($prefix,$version) { +$pdo = $this->pdo; +try { +if ($version != "1.1.28") { +$ret = $this->updateUserTable1126_1127($prefix,$version); +if (!$ret) { +return false; +} +} + +$adminCl = new Admin(); +DbUtils::overrulePrefix($prefix); + +$sql = "INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL,?,?)"; +$stmt = $pdo->prepare($this->basedb->resolveTablenamesInSqlString($sql)); +$stmt->execute(array('waitergopayprint',0)); + +$this->updateVersion($pdo, '1.1.29'); +return true; +} catch (PDOException $e) { +return false; +} +} + function setVersion($prefix,$theVersion) { $pdo = $this->pdo; try { @@ -1194,7 +1218,7 @@ $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VAL $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'billlanguage', $billlanguage)"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'currency', '$currency')"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'receiptfontsize', '12')"); -$this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'version', '1.1.28')"); +$this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'version', '1.1.29')"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'paymentconfig', '0')"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'remoteaccesscode', null)"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'decpoint', '$decpoint')"); @@ -1222,6 +1246,7 @@ $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VAL $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'certificatesn', '1234567')"); $this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'digigopaysetready', '1')"); +$this->basedb->doSQL($pdo,"INSERT INTO `%config%` (`id` , `name`, `setting`) VALUES (NULL , 'waitergopayprint', '0')"); // prepare for later inconsistency check if version is obsolete date_default_timezone_set($timezone); @@ -1557,7 +1582,7 @@ $zones[] = $timezone_identifiers[$i]; } echo json_encode($zones); } else if ($command == 'update') { -$installerVersion = "1.1.28"; +$installerVersion = "1.1.29"; $admin = new InstallAdmin(); $pdo = $admin->openDbAndReturnPdo($_POST['host'],$_POST['db'],$_POST['user'],$_POST['password']); @@ -1586,7 +1611,7 @@ $supportedVersions = array("1.0.22","1.0.23","1.0.24","1.0.25","1.0.26","1.0.27" "1.0.30","1.0.31","1.0.32","1.0.33","1.0.34","1.0.35","1.0.36","1.0.37","1.0.38","1.0.39", "1.0.40","1.0.41","1.0.42","1.0.43", "1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.1.5","1.1.6","1.1.7","1.1.8", "1.1.9","1.1.10","1.1.11","1.1.12","1.1.13","1.1.14","1.1.15","1.1.16","1.1.17", -"1.1.18","1.1.19","1.1.20","1.1.21","1.1.22","1.1.23","1.1.24","1.1.25","1.1.26","1.1.27" +"1.1.18","1.1.19","1.1.20","1.1.21","1.1.22","1.1.23","1.1.24","1.1.25","1.1.26","1.1.27","1.1.28" ); if (!in_array($version, $supportedVersions)) { @@ -1594,7 +1619,7 @@ echo json_encode("Quellversion nicht unterstützt"); return; } -$ret = $admin->updateUserTable1127_1128($_POST['prefix'], $version); +$ret = $admin->updateUserTable1128_1129($_POST['prefix'], $version); if(session_id() == '') { session_start(); diff --git a/webapp/kitchen.html b/webapp/kitchen.html index 8bd1177..b6aa89f 100644 --- a/webapp/kitchen.html +++ b/webapp/kitchen.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/manager.html b/webapp/manager.html index 89020d2..f0836dd 100644 --- a/webapp/manager.html +++ b/webapp/manager.html @@ -5,7 +5,7 @@ - + @@ -136,10 +136,14 @@ var MAN_DISCOUNT1 = ["Rabatt 1 (%)","Discount 1 (%)","Descuento 1 (%)"]; var MAN_DISCOUNT2 = ["Rabatt 2 (%)","Discount 2 (%)","Descuento 2 (%)"]; var MAN_DISCOUNT3 = ["Rabatt 3 (%)","Discount 3 (%)","Descuento 3 (%)"]; var MAN_AUSTRIA = ["Österreich","Austria","Austria"]; -var MAN_DIGI_GOPAY_SET_READY = ["Bestell-Kassenbutton deklariert Produkte 'fertig'","Waiter's paydesk button declares products be served","Boton caja en camarero view pone declara productos servidos"]; +var MAN_DIGI_GOPAY_SET_READY = ["Bestell-Kassenbutton deklariert Produkte 'fertig'","Waiter's paydesk button declares products be served","Boton caja en vista de camarero pone declara productos servidos"]; var MAN_DIGI_GOPAY_DESCR = ["Im Arbeitsablauf 'nur digital' bestimmt diese Einstellung, ob bei Druck auf den Button 'Kasse' in der Bestellansicht mit anschließender Bezahlung die Produkte als serviert behandelt werden sollen.", "In the 'only digital' workflow this setting specifies if after pressing the 'paydesk' button in the waiter's view and paying the products shall be handled as served.", "En el modus 'digital' este boton especifica si los productos deben declarados como servidos despues pagar por click en el boton 'caja' en la vista de camarero."]; +var MAN_WAITER_GOPAY_PRINT = ["Bestell-Kassenbutton druckt Arbeitsbons","Waiter's paydesk button prints also work receipts","Boton caja en vista de camarero imprime también tiquets de trabajo"]; +var MAN_WAITER_GOPAY_DESCR = ["Im Arbeitsablauf 'nur Arbeitsbons' bestimmt diese Einstellung, ob bei Druck auf den Button 'Kasse' Arbeitsbons gedruckt werden sollen.", + "In the 'only work receipts' workflow this setting specifies if after pressing the 'paydesk' button in the waiter's view work receipts shall be printed.", + "En el modus 'solo tiques de trabajar' este boton especifica se debe imprimido el tique de trabajar despues el click en el boton 'caja' en la vista de camarero."]; var MAN_GROUP_WORK_ITEMS = ["Artikelzusammenfassung Arbeitsbon","Summary articels on work receipt", "Agrupación articulos tique d. tr." ]; var MAN_RES_NOTE = ["Reservierungsbestätigung","Confirmation reservation","Text de email para reservación"]; var MAN_CHANGE_CONFIG_HEAD = ["Konfiguration ändern?","Change configuration?","Modificar configuración?"]; @@ -270,7 +274,7 @@ var MAN_CERTIFICATE_SN = ["Zertifikatsseriennummer", "Certificate Serial No","Ce var MAN_TAX = ["Steuersatz (%)","Tax (%)","Impuesto (%)"]; var lang = 0; -var generalVals = [12,2,0,3,0,1,1,0,0,1, 0,50,20,10,1]; +var generalVals = [12,2,0,3,0,1,1,0,0,1, 0,50,20,10,1,0]; var numberOfClosings = 0; @@ -298,6 +302,7 @@ var generalValuesSettings = [ ["discount3",MAN_DISCOUNT3[lang],"s",13], ["austria",MAN_AUSTRIA[lang],"s",10], ["digigopaysetready",MAN_DIGI_GOPAY_SET_READY[lang],"s",14], + ["waitergopayprint",MAN_WAITER_GOPAY_PRINT[lang],"s",15], ["workflowconfig",MAN_WORKFLOW[lang],"s",4], ["receiptfontsize",MAN_RECEIPT_FONTSIZE[lang],"s",0], ["billlanguage",MAN_LANG_OF_RECEIPT[lang],"s",2], @@ -372,6 +377,7 @@ function setLanguage(l) { $("#paydeskidtxt").html(MAN_PAYDESKID[l]); $("#austriahint").html(MAN_AUSTRIA_INCOMPLETE[l]); $("#digigopaysetreadyhint").html("

" + MAN_DIGI_GOPAY_DESCR[l] + "

"); + $("#waitergopayprinthint").html("

" + MAN_WAITER_GOPAY_DESCR[l] + "

"); $("#aeskeytxt").html(MAN_AESKEY[l]); $("#certificatesntxt").html(MAN_CERTIFICATE_SN[l]); @@ -494,6 +500,7 @@ function insertGeneralConfigItems(configResult) { $("#partOfAustria").html(createAustriaPart(values.austria)); $("#partOfDigigopaysetready").html(createDigigopaysetready(values.digigopaysetready)); + $("#partOfWaitergopayprint").html(createWaitergopayprint(values.waitergopayprint)); var language = values.billlanguage; generalVals[2] = language; @@ -529,6 +536,7 @@ function insertGeneralConfigItems(configResult) { $("#partOfDiscount3").html(createDiscount3Part()); generalVals[10] = values.austria; generalVals[14] = values.digigopaysetready; + generalVals[15] = values.waitergopayprint; $("#smtphost").val(values.smtphost); $("#partOfSmtpauth").html(createSMTPAuth(values.smtpauth)); @@ -638,6 +646,9 @@ function createAustriaPart(theValue) { function createDigigopaysetready(theValue) { return createYesNo("digigopaysetready",MAN_DIGI_GOPAY_SET_READY, theValue); } +function createWaitergopayprint(theValue) { + return createYesNo("waitergopayprint",MAN_WAITER_GOPAY_PRINT, theValue); +} function createGroupWorkItemsPart(theValue) { return createYesNo("groupworkitems", MAN_GROUP_WORK_ITEMS, theValue); @@ -1128,7 +1139,7 @@ function binding() { e.stopImmediatePropagation(); e.preventDefault(); setVisibilityOfAustriaButtons(); - setVisibilityOfDigiGoPayDeskPart(); + setVisibilityDueToWorkflow(); }); bindSelectionsWithActions(); @@ -1150,7 +1161,7 @@ function bindSelectionsWithActions() { e.preventDefault(); var newworkflowSel = $("#workflowconfig").find(":selected").val(); $("#partOfWorkflowConfig").html(createWorkflowConfigPart(newworkflowSel)); - setVisibilityOfDigiGoPayDeskPart(); + setVisibilityDueToWorkflow(); $("#configpart").trigger("create"); bindSelectionsWithActions(); }); @@ -1165,13 +1176,19 @@ function setVisibilityOfAustriaButtons() { } } -function setVisibilityOfDigiGoPayDeskPart() { +function setVisibilityDueToWorkflow() { var workflowBox = $("#workflowconfig").find(":selected").val(); if (workflowBox == 1) { $("#partIfDigiWorkflow").show(); } else { $("#partIfDigiWorkflow").hide(); } + // REM: 2: Only digital + if (workflowBox == 2) { + $("#partIfWorkReceiptsWorkflow").show(); + } else { + $("#partIfWorkReceiptsWorkflow").hide(); + } } function confirmMsg (result) { @@ -2267,6 +2284,10 @@ $(document).on("pageinit", "#admin-page", function () {
+
+
+ +
diff --git a/webapp/paydesk.html b/webapp/paydesk.html index 3685970..ce622a6 100644 --- a/webapp/paydesk.html +++ b/webapp/paydesk.html @@ -5,7 +5,7 @@ - + @@ -13,7 +13,7 @@ +var P_DESCR=["Beschreibung","Description","Descripción"];var P_PRICE=["Preis","Price","Precio"];var P_TOTAL=["Total","Total","Total"];var P_ID=["Id:","Id:","Id:"];var P_ROOMSEL=["Raumauswahl","Room selection","Selección de espacio"];var P_PAYDESK_ACTIONS=["Kassenaktionen","Paydesk actions","Acciones de caja"];var P_BAR_INPUT=["Bareinlage","Input money","Insertar dinero"];var P_BAR_GET=["Barentnahme","Take money","Sacar dinero"];var P_BAR_SUM=["Einnahmen","Revenue","Cobro"];var P_TITLE=["Kasse","Paydesk","Caja"];var P_TABLE=["Tisch","Table","Mesa"];var P_TABLE_SEL=["Tischauswahl","Select table","Qué mesa?"];var P_NOT_PAID=["Ausstehend für ","Not paid for ","Impagado para "];var P_ALL=["Alles","All","Todo"];var P_CONTENT_RECEIPT=["Inhalt Kassenbon","Content of receipt","Contenido del tique"];var P_ONLY_PAY=["Nur Zahlung","Only pay","Solo pagar"];var P_PAY_PRINT=["Bondruck","Pay+Print","Pagar+Imprimir"];var P_CHANGE_CALC=["Wechselgeldrechner:","Change Calculator:","Calculadora de Cambio:"];var P_CHOOSE_PAYWAY=["Auswahl der Zahlungsart:","Selection of method of payment:","Selección del modo de pago:"];var P_CANCEL=["Abbrechen","Cancel","Cancelar"];var P_CASHTAKEOUT=["Barentnahme aus der Kasse","Cash take-out","Sacar dinero"];var P_CASHTAKIN=["Bareinlage in die Kasse","Cash insert","Insertar dinero"];var P_AMOUNT=["Betrag:","Amount:","Valor:"];var P_OVERVIEW=["Übersicht Kellnerkasse","Overview waiter purse","Resumen cartera de bolsillo"];var P_PUT_IN=["Einlegen","Insert","Insertar"];var P_TAKE_OUT=["Entnehmen","Take out","Sacar"];var P_OVERV_DETAILS=["Diese Übersicht enthält die Bar-Bewirtungseinnahme durch den Kellner seit der letzten Tageslosung sowie als weiteren Wert den Kassenstand unter Berücksichtigung der eigenen Eingaben und Entnahmen.","This overview contains the cash amount of money of this waiter since the last closing as well as the total amount of money including the own cash insert and take-out actions.","Este resumen contiene todo el dinero al contado por cobro para el camarero, y también el dinero incluido con acciones de insertar y sacar."];var P_CASH_SUM=["Bewirtungseinnahmen:","Cash by payment:","Cobro:"];var P_INCLUDE_OWN=["inkl. eigener Kassen-Eingaben/Entnahmen:","incl. own cash insert/take-outs:","incl. tomas y entradas proprias:"];var P_NO_ELEM=["Keine Rechnungselemente","No items selected","Ningún producto selecionado"];var P_NO_ELEM_DETAILS=["Es wurden keine abrechenbaren Produkte festgelegt (der Bon ist leer!).","There are no selected items. The receipt is empty!","No hay ningún elemento seleccionado para pagar."];var P_CASHACTION_OK=["Kassenaktion abgeschlossen.","Action completed.","Acción terminado."];var P_NAV=["Navigation","Navigation","Navigación"];var P_ORDER_ACTION=["-> Bestellansicht","-> Order view","-> Vista de Orden"];var P_TO_PAY=["Zu zahlen: ","To pay: ","Pagar total: "];var P_PAY_RETURN=["Zurück: ","Return: ","Torna: "];var P_CALC_PAYBACK=["Berechne","Calculate","Calcular"];var P_HAS_PAID=["Bezahlt: ","Paid: ","Pagado: "];var P_TOGO=["Außer-Haus-Verkauf","Sale with Tax No 2","Venta IVA 2"];var P_TIP=["nur Trinkg.: ","Only tip: ","Solo prop.: "];var P_TOTAL_INCL_TIP=["Zielbetrag:","Target pay:","Quiere pagar:"];var CALC_TIP_TXT=["Angabe extra Trinkg.","Do Tip separate","Propina individual"];var CALC_TOTAL_TXT=["Angabe inkl.Trinkg.","Do Tip incl.","Propina incl."];var CALC_TIP=0;var CALC_TOTAL=1;var lang=0;var receiptfontsize=12;var paymentconfig=0;var decpoint=".";var currency="";var osroombtnsize=0;var ostablebtnsize=0;var osprodbtnsize=0;var tminfo=null;var hasRooms=true;var cameFromOrdering=0;var billbrutto=0;var billnetto=0;var prodsToPayList=[];var prodsToPayListGrouping=[];var payTable="";var prodsOnReceiptList=[];var prodsOnReceiptListGrouping=[];var calcmodus=CALC_TOTAL;var workflowconfig=0;var digigopaysetready=1;function initializeMainMenu(a){$.ajax({type:"GET",dataType:"json",url:"php/contenthandler.php?module=admin&command=getJsonMenuItemsAndVersion",async:false,success:function(c){$("#versioninfo").html(c.version+" ");if(c.loggedin==1){$("#loggedinuser").html(" "+c.user);var b='
  • Module
  • ';$.each(c.menu,function(g,f){var e=f.name;var h=f.link;if((e!="Abmelden")&&(e!="Log out")&&(e!="Adios")){b+='
  • '+e+"
  • "}else{b+='
  • '+e+"
  • "}});$(a).empty().append(b).promise().done(function(){$(a).listview("refresh")});$("#menuswitch").show()}else{$("#menuswitch").hide()}},error:function(b){alert("Kommunikationsproblem zum Server bei Modulabfrage!")}});$(".modulebutton").off("click").on("click",function(c){var b=$(this).attr("href");doAjax("POST","php/contenthandler.php?module=admin&command=setLastModuleOfUser",{view:b},null,"Problem Benutzerdatenpflege")})}function hideMenu(){$("#modulepanel").panel("close");$("#menuswitch").off("click").on("click",function(a){$("#menuswitch").trigger("mouseout");a.stopImmediatePropagation();a.preventDefault();$("#modulepanel").panel("open")})}function refreshList(a){if($(a).hasClass("ui-listview")){$(a).listview("refresh")}else{$(a).trigger("create")}}function doAjax(a,b,f,e,c,g){if(typeof g==="undefined"){g=false}$.ajax({type:a,url:b,dataType:"json",data:f,async:g,success:function(h){if(e!=null){e(h)}},error:function(l,h,i){if(c!=null){var k=c+", Status: "+h+", Error:"+i+", Msg: "+l.responseText+" ("+b+")";alert("Kommunikationsfehler zum Server: "+k)}}})}function doAjaxAsync(a,b,e,c){$.ajax({type:a,url:b,dataType:"json",data:e,async:true,success:function(f){if(c!=null){c(f)}},error:function(h,f,g){}})}function doAjaxTransmitData(a,b,g,f,e,c){$.ajax({type:a,url:b,dataType:"json",data:g,async:false,success:function(h){if(f!=null){f(h,c)}},error:function(l,h,i){if(e!=null){var k=e+", Status: "+h+", Error:"+i+", Msg: "+l.responseText+" ("+b+")";alert("Kommunikationsfehler zum Server: "+k)}}})}function doAjaxSuppressError(a,b,f,e,c){$.ajax({type:a,url:b,dataType:"json",data:f,async:false,success:function(g){if(e!=null){e(g)}},error:function(g){e("ERROR")}})}function doAjaxNonJsonNonCall(a,b,c){$.ajax({type:a,data:c,url:b,async:false,error:function(e){alert("Kommunikationsproblem zum Server")}})}function toHtml(a){if(typeof a==="string"){return(a.replace(/"/g,""").replace(//g,">"))}else{return a}}function createExtraParagraph(b){if((b==null)||(b=="")){return""}var c="";for(var a=0;a+ "+toHtml(b[a])+"

    "}return c}function checkForLogIn(){doAjax("GET","php/contenthandler.php?module=admin&command=isUserAlreadyLoggedIn",null,handleTestForLoggedIn,null)}function handleTestForLoggedIn(a){if(a!="YES"){setTimeout(function(){document.location.href="index.html"},250)}}var P_SUM=["Summe:","Sum:","Todo:"];var P_TOTAL=["Total","Total","Total"];var P_MWST=["MwSt","Tax","IVA"];var P_NETTO=["Netto","Net","Neto"];var P_BRUTTO=["Brutto","Gross","Bruto"];var P_ID=["Id:","Id:","Id:"];var P_TABLE=["Tisch:","Table:","Mesa:"];var P_WAITER=["Es bediente Sie:","Waiter:","Camarero:"];var P_NO=["Anz.","No.","Nú."];var P_DESCR=["Beschreibung","Description","Descripción"];var P_PRICE=["Preis","Price","Precio"];function genCreateReceiptHeader(b,e,h,f,k){var a='style="border: solid black 0px;padding: 3px;text-align:right;vertical-align:bottom;"';var i=P_TABLE[b]+" "+h;var c=P_WAITER[b]+" "+f;var g="";g+=" ";g+=""+i+' ID:"+e+"";g+=' ";g+=""+c+"";g+=" ";g+=""+P_NO[b]+""+P_DESCR[b]+""+P_PRICE[b]+""+P_TOTAL[b]+"";return g}function genCreateReceiptFooterNoSum(c,e,b,a){return genCreateReceiptFooter(c,e,b,"","","",a)}function genCreateReceiptFooter(a,f,b,k,e,m,n){var c='style="border: solid black 0px;padding: 3px;text-align:right;vertical-align:bottom;"';var p='style="text-align:center;vertical-align:bottom;"';var h=" ";var o=h;o+=""+P_MWST[f]+"% "+P_MWST[f]+""+P_NETTO[f]+""+P_BRUTTO[f]+"";for(var l=0;l"+k+'"+e+'"+m+""}o+=h;o+="   "+P_SUM[f]+'"+m+"";o+=h;o+="
     
    ";o+=toHtml(b).replace(/(?:\r\n|\r|\n)/g,"
    ");o+="
    ";return o}function createReceiptFooterFromDbTaxes(c,a,h,k,m){var b='style="border: solid black 0px;padding: 3px;text-align:right;vertical-align:bottom;"';var n='style="text-align:center;vertical-align:bottom;"';var f=" ";var l=f;l+=""+P_MWST[c]+"% "+P_MWST[c]+""+P_NETTO[c]+""+P_BRUTTO[c]+"";for(var g=0;g"+e.tax;l+=""+e.mwst.replace(".",m);l+=""+e.netto.replace(".",m);l+=""+e.brutto.replace(".",m);l+=""}l+=f;l+="   "+P_SUM[c]+'"+h.toFixed(2).replace(".",m)+"";l+=f;l+="
     
    ";l+=toHtml(a).replace(/(?:\r\n|\r|\n)/g,"
    ");l+="
    ";return l}function generateOneProdLine(l,h,k,a,o,f){var b='style="border: solid black 0px;padding: 3px;text-align:right;vertical-align:bottom;"';var i='style="border: solid black 0px;padding: 3px;text-align:center;vertical-align:bottom;"';var c=(parseFloat(k)).toFixed(2).replace(".",o);if(a!="A"){h+=" ("+a+")"}if(f==1){h="To-Go: "+h}var n=l*k;var g=n.toFixed(2).replace(".",o);var m="";var e='style="white-space: nowrap;overflow: hidden;text-overflow:ellipsis;width: 60%;"';m+="'+l+""+h;m=m+""+c;m+=""+n.toFixed(2).replace(".",o)+"";return m}function generateProdPart(k,b){var i=0;tablecontent="";for(i=0;i";return m}function Tablemap(b,a,c){this.tables=a;this.roomid=b;this.elem=c;this.selectedTableId=-1;if((a!=null)&&(a.length>0)){this.selectedTableId=a[0].id}}Tablemap.prototype.renderContent=function(){doAjaxTransmitData("GET","php/tablemap.php?command=getTableMap&roomid="+this.roomid,null,this.renderTableList,null,this);d=new Date();$("#mapimgpart").attr("src","php/tablemap.php?command=getTableMapImgAsPng&roomid="+this.roomid+"&tableid="+this.selectedTableId+"&"+d.getTime())};Tablemap.prototype.renderTableList=function(b,a){a.tables=b;var c=a.createList(b,"table_","tablebtn","c",a);$(a.elem).html(c);tmRefreshList(a.elem);a.binding(a)};Tablemap.prototype.createList=function(n,a,g,h,p){var m='
    ';for(var l=0;l'}m+="
    ";return m};Tablemap.prototype.binding=function(a){$(".tablebtn").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();a.selectedTableId=this.id.split("_")[1];a.renderContent(a.elem)});$("#tmimgbtn").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();a.uploadImg(a)});$("#mapimgpart").off("click").on("click",function(k){k.stopImmediatePropagation();k.preventDefault();var c=$("#mapimgpart").width();var b=$("#mapimgpart").height();var l=$(this).offset().top-$(window).scrollTop();var g=$(this).offset().left-$(window).scrollLeft();var i=Math.round((k.clientX-g));var h=Math.round((k.clientY-l));var f={tableid:a.selectedTableId,x:(100*i)/c,y:(100*h)/b};doAjaxTransmitData("POST","php/tablemap.php?command=setPosition",f,a.renderIfOk,null,a)})};Tablemap.prototype.createOverlay=function(w,g,m,s,e,h,r){var o=[];var f="";if(r==0){f="overlaysize-0"}else{if(r==1){f="overlaysize-1"}else{if(r==2){f="overlaysize-2"}}}for(var v=0;v'+x;if(u!=0){p=''+x;if(m!=""){p+="
    ("+m+": "+k+")"}else{p+="
    ("+k+")"}}p+="
    ";o[o.length]=p}}return o};Tablemap.prototype.bindingForOverlaySelection=function(a,c,b){$(".overlaytxt").off("click").on("click",function(m){m.stopImmediatePropagation();m.preventDefault();var g=this.id.split("_")[1];var h="?";for(var f=0;f0)){var u=a[0].id;var n=a[0].name;var t=(100*100)+(100*100);for(var k=0;k'}k+="";return k};Tablemap.prototype.uploadImg=function(a){var b=new FormData($("#tablemapimgform")[0]);b.append("roomid",a.roomid);$.ajax({url:"php/tablemap.php?command=uploadimg",type:"POST",dataType:"json",xhr:function(){var c=$.ajaxSettings.xhr();if(c.upload){}return c},success:function(c){if(c.status!="OK"){a.imgNotUploaded(c)}else{a.imgUploaded(c,a)}},error:function(c){a.imgNotUploaded(c)},data:b,cache:false,contentType:false,processData:false})};Tablemap.prototype.imgUploaded=function(b,a){a.renderContent()};Tablemap.prototype.imgNotUploaded=function(a){alert("Bild konnte nicht hochgeladen werden. Ist es zu groß (> 1 MB)? Oder wurde der Dateiname nicht angegeben?")};function closePrint(){document.body.removeChild(this.__container__)}function setAndStartPrint(){this.contentWindow.__container__=this;this.contentWindow.onbeforeunload=closePrint;this.contentWindow.onafterprint=closePrint;this.contentWindow.focus();this.contentWindow.print()}function printContent(c){var b=document.createElement("iframe");b.setAttribute("id","printiframe");b.onload=setAndStartPrint;b.style.visibility="hidden";b.style.position="fixed";b.style.right="0";b.style.bottom="0";var a=""+c+"";b.src="data:text/html;charset=utf-8,"+encodeURI(a);document.body.appendChild(b)}function Grouping(b,a){this.set=b;this.sortedset=[];this.group=function(){this.sortedset=[];for(var g=0;g
  • '+P_BAR_INPUT[lang]+'
  • '+P_BAR_GET[lang]+'
  • '+P_BAR_SUM[lang]+"
  • ";$("#cashactions").html(a);$("#cashactions").listview("refresh");$("#navtitle").html(P_NAV[lang]);$("#nav2order").html(P_ORDER_ACTION[lang]);$("#navactions").listview("refresh");$("#paydesktitle").html(P_TITLE[lang]);$("#OnlyPayTxt").html(P_ONLY_PAY[lang]);$("#payprinttxt").html(P_PAY_PRINT[lang]);$("#payway").html(P_CHANGE_CALC[lang]);$("#choosepayway").html(P_CHOOSE_PAYWAY[lang]);$("#canceltxt").html(P_CANCEL[lang]);$("#cashtakeouttxt").html(P_CASHTAKEOUT[lang]);$("#amounttxt").html(P_AMOUNT[lang]);$("#amounttxt2").html(P_AMOUNT[lang]);$("#cashtakeintxt").html(P_CASHTAKIN[lang]);$("#cashoverviewtxt").html(P_OVERVIEW[lang]);$("#putinact").html(P_PUT_IN[lang]);$("#takeoutact").html(P_TAKE_OUT[lang]);$("#overviewdetails").html(P_OVERV_DETAILS[lang]);$("#cashsum").html(P_CASH_SUM[lang]);$("#includeowncash").html(P_INCLUDE_OWN[lang]);$("#noelementstxt").html(P_NO_ELEM[lang]);$("#noelementsdetailstxt").html(P_NO_ELEM_DETAILS[lang]);$("#topaytxt").html(P_TO_PAY[lang]);$("#rettxt").html(P_PAY_RETURN[lang]);$("#calcreturn").html(P_CALC_PAYBACK[lang]);$("#haspaidtxt").html(P_HAS_PAID[lang]);$("#tableselimmaptxt").html(P_TABLE_SEL[lang]);setCalcModusBtn()}function getButtonSizes(){doAjax("GET","php/contenthandler.php?module=admin&command=getButtonSizes",null,fillButtonSizes,"Keine Buttongroesseninformation")}function fillButtonSizes(a){osroombtnsize=a.roombtnsize;ostablebtnsize=a.tablebtnsize;osprodbtnsize=a.prodbtnsize}function getProdSizeClass(){if(osprodbtnsize==1){return("osprod-1")}else{if(osprodbtnsize==2){return("osprod-2")}else{return""}}}function getTableSizeClass(){if(ostablebtnsize==1){return("ostable-1")}else{if(ostablebtnsize==2){return("ostable-2")}else{return""}}}function getRoomSizeClass(){if(osroombtnsize==1){return("osroom-1")}else{if(osroombtnsize==2){return("osroom-2")}else{return""}}}function insertPayments(e){var c="";var a=20;if(paymentconfig==1){a=2}var b=false;$.each(e,function(g,f){if(g'+f.name+"";if(!b){c+="


    ";b=true}}});c+=''+P_CANCEL[lang]+"";$("#paymentlist").html(c)}function hideReceiptPart(){$("#payWithoutPrint").hide();$("#payWithPrint").hide();$("#hostbutton").hide();$("#unten").hide()}function showReceiptPart(){$("#payWithoutPrint").show();$("#payWithPrint").show();$("#hostbutton").show();$("#unten").show();$("#tablemapcontent").hide();$("#togoarea").hide()}function getTableMapPreferences(){doAjax("GET","php/tablemap.php?command=getTableMapPreferences",null,insertTMInfo,"Keine TM-Information")}function insertTMInfo(a){tminfo=a;startDisplayProcess()}function shallDisplayRoom(b){for(var a=0;a'+P_NO[a]+""+P_DESCR[a]+''+P_PRICE[a]+''+P_TOTAL[a]);$.getJSON("php/contenthandler.php?module=roomtables&command=getRooms",function(f){var g=f.roomstables;var c=f.takeawayprice;var h=g.length;if(h==1){$("#info-page").data("roomid",g[0]["id"]);displayTablesOfRoom(g[0],false);if(cameFromOrdering==1){$("#startpaypage").show()}else{$("#startpaypage").hide()}}else{var b="";var e=getRoomSizeClass();$.each(g,function(l,k){b+='
  • '+k.name+"
  • "});if(c!="0.00"){b+='
  • '+P_TOGO[a]+" ("+c+" "+currency+")
  • "}$("#startpaypage").hide();$("#oben").append(b).promise().done(function(){bindTogoOrdering();$(this).off("click").on("click","a",function(k){k.stopImmediatePropagation();k.preventDefault();var i=g[this.id];$("#info-page").data("roomid",i.id);$("#startpaypage").show();displayTablesOfRoom(i,true)});refreshList(this)})}})}function bindTogoOrdering(){$(".togoorder").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();$("#info-page").data("roomid",null);$("#info-page").data("tableviewactive",0);$("#info-page").data("tid",0);$("#info-page").data("tablename",P_TOGO[lang]);$("#oben").show();getProdsToPayForTable(0,"")})}function displayTablesOfRoom(a,b){checkForLogIn();hasRooms=b;var c=$("#info-page").data("roomid");hideReceiptPart();displayUnpaidTables("Tischinfo nicht erhalten!")}$(document).ready(function(){checkForLogIn();var a=setInterval(function(){var b=$("#info-page").data("roomid");if(b!=null){displayUnpaidTables(null)}},10000);$.ajaxSetup({cache:false})});function displayUnpaidTables(a){doAjax("GET","php/contenthandler.php?module=roomtables&command=getUnpaidTables",{roomid:$("#info-page").data("roomid")},displayTables,a)}function displayTables(f){var i=f.tables;var e=f.takeawayprice;$("#info-page").data("tableviewactive",1);var a=$("#info-page").data("roomid");var g=shallDisplayRoom(a);if(g.show){$("#oben").hide();$("#tablemapcontent").show();$("#togoarea").show();d=new Date();$("#mapimgpart").attr("src","php/tablemap.php?command=getUnpaidTablesMapImgAsPng&showBubbles=0&roomid="+a+"&"+d.getTime());var b=new Tablemap(a,null,"");var c=b.createOverlay("#mapimgpart",g.pos,"",decpoint,currency,i,ostablebtnsize);$("#tableoverlay").html(c);b.bindingForOverlaySelection(handleClickInTablemap.bind(this),a,i);if(!hasRooms){if(e!="0.00"){var h='
  • '+P_TOGO[lang]+"
  • ";$("#tables-list-togo").html(h);$("#togoarea").show()}refreshList("#tables-list-togo");bindTogoOrdering()}}else{$("#oben").show();$("#tablemapcontent").hide();$("#togoarea").hide();var h='
  • '+P_TABLE_SEL[lang]+"
  • ";var k=getTableSizeClass();$.each(i,function(m,o){var n=o.pricesum.replace(".",decpoint);var l=o.name+"    ("+n+" "+currency+")";h+='
  • '+l+"
  • "});if(!hasRooms){if(e!="0.00"){h+='
  • '+P_TOGO[lang]+"
  • "}}$("#oben").empty().append(h).promise().done(function(){bindTogoOrdering();$(this).off("click").on("click",".info-go",function(n){n.stopImmediatePropagation();n.preventDefault();$("#info-page").data("roomid",null);$("#info-page").data("tableviewactive",0);var l=i[this.id]["id"];var m=i[this.id]["name"];$("#info-page").data("tid",l);$("#info-page").data("tablename",m);getProdsToPayForTable(l,m)});refreshList(this)})}}function getProdsToPayForTable(a,b){$("#startpaypage").show();if(a==0){b=P_TOGO[lang];$("#info-page").data("taxtype","togo")}else{$("#info-page").data("taxtype","normal")}$("#cashactions").hide();$("#navactions").hide();$.ajax({type:"GET",dataType:"json",data:{tableid:a},url:"php/contenthandler.php?module=queue&command=getJsonProductsOfTableToPay",async:false,success:function(e){var c=e.status;var f=e.msg;if(c!="ERROR"){showReceiptPart();$("#info-page").data("tableprods",f);bindPayButton(f,a,b);initiatePayableView(f,b)}else{alert("Fehler: "+f)}},error:function(c){alert("Sorry, there was a problem getting the products to pay for table!")}})}function initiatePayableView(a,b){$("#tableinreceipt").html(b+"
     ");clearUntenAndReceipt();createAllEntriesInReceipt();calcSum();prodsToPayList=a;payTable=b;displayProdsToPayForTable()}function displayProdsToPayForTable(){prodsToPayListGrouping=new Grouping(prodsToPayList,createHashOfPayableItem);prodsToPayListGrouping.group();var b=getProdSizeClass();var a='
  • '+P_NOT_PAID[lang]+payTable+"
  • ";a+='
  • '+P_ALL[lang]+"
  • ";var c=a+prodsToPayListGrouping.outputList(createPayableItemListElement);$("#oben").html(c);refreshList("#oben");$(".payable").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=$(this).closest("li");var i=$("#oben li").index(g)-2;var f=prodsToPayListGrouping.popSortedEntry(i);prodsOnReceiptList[prodsOnReceiptList.length]=f;displayProdsToPayForTable();displayProdsOnReceipt()});$("#payall").off("click").on("click",function(g){g.stopImmediatePropagation();g.preventDefault();for(var f=0;f0,00 '+currency+"

    ";var c=a+prodsOnReceiptListGrouping.outputList(createOnReceiptItemListElement);$("#unten").html(c);refreshList("#unten");createAllEntriesInReceipt();$(".onreceipt").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=$(this).closest("li");var i=$("#unten li").index(g)-1;var f=prodsOnReceiptListGrouping.popSortedEntry(i);prodsToPayList[prodsToPayList.length]=f;displayProdsToPayForTable();displayProdsOnReceipt()})}function generateListItem(g,c,h,e,f){var b=getProdSizeClass();var a='
  • ';a+=''+e+"
  • ";return a}function createHashOfPayableItem(b){var a=b.longname;if(b.pricelevelname!="A"){a+=" ("+b.pricelevelname+")"}a+=" - "+(parseFloat(b.price).toFixed(2).replace(".",decpoint));if(b.togo==1){a="To-Go: "+a}var c=createExtraParagraph(b.extras);return toHtml(a)+c}function createPayableItemListElement(b){var a="";if("count" in b){if(b.count>1){a=b.count+"x "}}var c=generateListItem("c","plus","payable_"+b.id,a+createHashOfPayableItem(b),"payable");return c}function createOnReceiptItemListElement(b){var a="";if("count" in b){if(b.count>1){a=b.count+"x "}}var c=generateListItem("c","plus","payable_"+b.id,a+createHashOfPayableItem(b),"onreceipt");return c}function clearUntenAndReceipt(){var a='
  • ';a+=P_CONTENT_RECEIPT[lang]+':

    0,00 '+currency+"

  • ";$("#unten").empty().append(a).promise().done(function(){refreshList("#unten")});$("#prodlistinreceipt tr").each(function(){$(this).remove()});$("#thedate").html("

     
    ")}function addEntryOrIncreaseCount(a,f){var c=0;var g=false;var e=f.prodid+"-"+f.extras.join("_")+f.price+"-"+f.pricelevelname+"#"+f.tax+"_"+f.togo;for(c=0;c"+$("#info-page").data("receipthtml")+"";var e=$("#info-page").data("escposheader");var p=$("#info-page").data("escposprods");var n=$("#info-page").data("escposfooter");var r=new Array(e,p,n,$("#info-page").data("hosting"));var g=cameFromOrdering;if(cameFromOrdering==1){if(workflowconfig==1){g=digigopaysetready}}$.ajax({type:"POST",dataType:"json",data:{ids:a,brutto:billbrutto,netto:billnetto,tableid:c,paymentid:q,tax:h,decpoint:decpoint,declareready:g,host:$("#info-page").data("hosting")},url:"php/contenthandler.php?module=queue&command=declarePaidCreateBillReturnBillId",async:false,success:function(w){var u=w.status;var v=w.msg;if(u!="ERROR"){billid=v.billid;billdate=v.date;if(billid<0){alert("Error! Bitte erneut versuchen. Error code: "+billid);window.location.reload(false)}else{var y=$("#info-page").data("billlanguage");$("#billid").html(P_ID[y]+billid);$("#billdate").html(billdate);if(o){var z=''+$("#receiptpart").html()+"
    ";var t=$("#info-page").data("payPrintType");if(t=="s"){printBill(billid)}else{$("#oben").hide();var x=""+$(".receipttable").html()+"
    ";printContent(x)}}prodsOnReceiptList=[];getProdsToPayForTable(c,m);var i=$("#oben li").size()-2;if(i>0){}else{if(cameFromOrdering==1){goToUrl("waiter.html")}else{goToUrl("paydesk.html")}}}}else{alert("Fehler: "+v)}},error:function(i){alert("Sorry, there was a problem! "+i)}})}function goToUrl(a){setTimeout(function(){document.location.href=a},500)}function printBill(a){doAjax("POST","php/contenthandler.php?module=printqueue&command=queueReceiptPrintJob",{billid:a},null,"Druckfehler")}function bindHostButton(){$("#hostbutton").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();var a=$("#info-page").data("billlanguage");if(a==0){var c=$("#info-page").data("hosting");if(c=="0"){$("#info-page").data("hosting","1")}else{$("#info-page").data("hosting","0")}createAllEntriesInReceipt()}else{if(lang==0){alert("Bewirtungsbeleg steht nur für deutsche Kassenbons zur Verfügung.")}else{if(lang==1){alert("Bewirtungsbeleg is only possible for German receipts.")}else{if(lang==2){alert("Bewirtungsbeleg se puedo usar solo para tiques alemanes.")}}}}})}function cashactions(){$(".cashaction").off("click").on("click",function(a){var b=$(this).attr("id");if(b=="cashtakeout"){startCashTakeOutProcess()}else{if(b=="cashinsert"){startCashInsertProcess()}else{if(b=="cashoverview"){startCashOverviewProcess()}}}})}function startCashInsertProcess(){$("#cashinsertdialog .sure-do").off("click").on("click",function(){$.mobile.changePage("#info-page");var a=$("#moneyToInsert").val().replace($("#info-page").data("decpoint"),".");if(isNaN(a)){alert("Keine Zahl!")}else{if((parseFloat(a)>=0)&&(parseFloat(a)<=10000)){doCashInsert(a)}else{alert("Betrag muss positiv und kleiner als 10000 sein!")}}});$.mobile.changePage("#cashinsertdialog")}function startCashTakeOutProcess(){$("#cashtakeoutdialog .sure-do").off("click").on("click",function(){$.mobile.changePage("#info-page");var a=$("#moneyToTakeOut").val().replace(decpoint,".");if(isNaN(a)){alert("Keine Zahl!")}else{if((parseFloat(a)>=0)&&(parseFloat(a)<=10000)){doCashTakeOut(a)}else{alert("Betrag muss positiv und kleiner als 10000 sein!")}}});$.mobile.changePage("#cashtakeoutdialog")}function doCashInsert(a){doAjax("POST","php/contenthandler.php?module=bill&command=doCashAction",{money:a},handleCashActionResult,"Fehler Kassenaktion")}function doCashTakeOut(a){a=0-parseFloat(a);doAjax("POST","php/contenthandler.php?module=bill&command=doCashAction",{money:a},handleCashActionResult,"Fehler Kassenaktion")}function startCashOverviewProcess(){doAjax("POST","php/contenthandler.php?module=bill&command=getCashOverviewOfUser",null,showCashOverview,"Fehler Kassenaktion")}function handleCashActionResult(a){if(a.status=="ERROR"){alert("Fehler "+a.code+": "+a.msg)}else{if(a.status=="OK"){alert(P_CASHACTION_OK[lang])}}}function showCashOverview(a){$("#cashbyguests").html((parseFloat(a.guestmoney).toFixed(2)).replace(".",decpoint));$("#cashtotal").html((parseFloat(a.total).toFixed(2)).replace(".",decpoint));$.mobile.changePage("#cashoverviewinfo")}function startDisplayProcess(){var b=location.search;if(b.indexOf("t=")<0){displayAllRooms()}else{var e="";var g=b.split(/&|\?/);for(var a=0;a diff --git a/webapp/php/admin.php b/webapp/php/admin.php index ab8f7be..cecd96a 100644 --- a/webapp/php/admin.php +++ b/webapp/php/admin.php @@ -601,7 +601,7 @@ class Admin { return; } - $configItems = join(",",array("'decpoint'","'version'","'cancelunpaidcode'","'tax'","'togotax'","'currency'","'workflowconfig'","'prominentsearch'","'discount1'","'discount2'","'discount3'")); + $configItems = join(",",array("'decpoint'","'version'","'cancelunpaidcode'","'tax'","'togotax'","'currency'","'workflowconfig'","'prominentsearch'","'discount1'","'discount2'","'discount3'","'waitergopayprint'")); $sql = "select name,setting FROM %config% WHERE name in ($configItems)"; $stmt = $pdo->prepare(DbUtils::substTableAlias($sql)); $stmt->execute(); @@ -716,6 +716,12 @@ class Admin { if (is_null($digigopaysetready)) { $digigopaysetready = 1; } + $stmt->execute(array("waitergopayprint")); + $row = $stmt->fetchObject(); + $waitergopayprint = $row->setting; + if (is_null($waitergopayprint)) { + $waitergopayprint = 0; + } $stmt->execute(array("groupworkitems")); $row = $stmt->fetchObject(); @@ -824,7 +830,8 @@ class Admin { "sday" => $now["mday"],"smonth" => $now["mon"], "syear" => $now["year"], "shour" => $now["hours"], "smin" => $now["minutes"], "smtphost" => $smtphost,"smtpauth" => $smtpauth,"smtpuser" => $smtpuser,"smtppass" => $smtppass,"smtpsecure" => $smtpsecure,"smtpport" => $smtpport, "webimpressum" => $webimpressum, "cancelunpaidcode" => $cancelunpaidcode, "discount1" => $discount1,"discount2" => $discount2,"discount3" => $discount3, - "austria" => $austria, "digigopaysetready" => $digigopaysetready, "paydeskid" => $paydeskid, "aeskey" => $aeskey, "certificatesn" => $certificatesn + "austria" => $austria, "digigopaysetready" => $digigopaysetready, "waitergopayprint" => $waitergopayprint, + "paydeskid" => $paydeskid, "aeskey" => $aeskey, "certificatesn" => $certificatesn ); if ($forHtml) { @@ -1137,19 +1144,19 @@ class Admin { $right_rating = $_SESSION['right_rating']; if (!self::isOnlyRatingUser($rights, $right_rating, true)) { - if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.1.28"); }; - if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.1.28"); }; - if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.1.28"); }; - if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.1.28"); }; - if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html"); }; - if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.1.28"); }; - if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.1.28"); }; - if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.1.28"); }; - if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.1.28"); }; - if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.1.28"); }; - if ($_SESSION['right_manager'] || $_SESSION['is_admin']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.1.28"); }; - $mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.1.28"); - $mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.1.28"); + if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.1.29"); }; + if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.1.29"); }; + if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.1.29"); }; + if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.1.29"); }; + if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html?v=1.1.29"); }; + if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.1.29"); }; + if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.1.29"); }; + if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.1.29"); }; + if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.1.29"); }; + if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.1.29"); }; + if ($_SESSION['right_manager'] || $_SESSION['is_admin']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.1.29"); }; + $mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.1.29"); + $mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.1.29"); } $mainMenu[] = array("name" => $logout[$lang], "link" => "logout.php"); @@ -1158,7 +1165,7 @@ class Admin { $waiterMessage = $this->getMessage(null, "waitermessage"); } // CAUTION: change version also in config.txt!!! - $mainMenuAndVersion = array ("version" => "OrderSprinter 1.1.28", + $mainMenuAndVersion = array ("version" => "OrderSprinter 1.1.29", "user" => $currentUser, "menu" => $mainMenu, "waitermessage" => $waiterMessage, @@ -1361,6 +1368,7 @@ class Admin { "discount3" => array("dbcol" => "discount3","checknum" => 0), "austria" => array("dbcol" => "austria","checknum" => 0), "digigopaysetready" => array("dbcol" => "digigopaysetready","checknum" => 0), + "waitergopayprint" => array("dbcol" => "waitergopayprint","checknum" => 0), "groupworkitems" => array("dbcol" => "groupworkitems","checknum" => 0), "workflowconfig" => array("dbcol" => "workflowconfig","checknum" => 0), "receiptfontsize" => array("dbcol" => "receiptfontsize","checknum" => 0), diff --git a/webapp/preferences.html b/webapp/preferences.html index 2a0df5d..cfb4ed5 100644 --- a/webapp/preferences.html +++ b/webapp/preferences.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/products.html b/webapp/products.html index 78afd37..46fe002 100644 --- a/webapp/products.html +++ b/webapp/products.html @@ -7,7 +7,7 @@ - + diff --git a/webapp/rating.html b/webapp/rating.html index edb80da..c444ffc 100644 --- a/webapp/rating.html +++ b/webapp/rating.html @@ -7,7 +7,7 @@ - + diff --git a/webapp/reports.html b/webapp/reports.html index 47b1f63..35dc912 100644 --- a/webapp/reports.html +++ b/webapp/reports.html @@ -7,7 +7,7 @@ - + diff --git a/webapp/reservation.html b/webapp/reservation.html index e764b3b..b209be1 100644 --- a/webapp/reservation.html +++ b/webapp/reservation.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/supplydesk.html b/webapp/supplydesk.html index aca19e1..8573cbb 100644 --- a/webapp/supplydesk.html +++ b/webapp/supplydesk.html @@ -5,7 +5,7 @@ - + diff --git a/webapp/waiter.html b/webapp/waiter.html index 1957b99..2f5aeed 100644 --- a/webapp/waiter.html +++ b/webapp/waiter.html @@ -4,7 +4,7 @@ - + @@ -30,7 +30,7 @@ +var W_TABLES=["Tische","Tables","Mesas"];var W_ROOMS=["Räume","Rooms","Espacios"];var W_SELECTION=["Auswahl","Selection","Selección"];var W_LAST_SELECTED=["zuletzt","last","seleccionado"];var W_FAVS=["Favoriten","Favorites","Favoritos"];var W_NEW_ORDER=["Neue Order","New Orders","Ordenes nuevas"];var W_KIT_BAR=["nicht serviert/unbezahlt","unserved/unpaid","no servido/impagado"];var W_OTHER_PROD=["Auswahl Produktkategorie","Select product categroy","Categoría diferente"];var W_WORK_TICKET=["Arbeitsbon","Work ticket","Tique de trabajar"];var W_NOTE=["Bemerkung","Comment","Comentario"];var W_SEND_ORDERS=["Bestellung senden","Send orders","Enviar Ordenes"];var W_TO_PAYDESK=["-> Kasse","-> Paydesk","-> Caja"];var W_TABLECHANGE=["Tischwechsel","Change table","Cambiar mesa"];var W_ROOMTABLE=["Raum-Tisch","Room-Table","Espacio-Mesa"];var W_TABLE_SEL=["Tischauswahl","Select table","Qué mesa?"];var W_UNDELIV_INFO=["Liste enthält die Produkte die noch in der Küchen-/Baransicht sind, sowie unbezahlte Produkte, die die Bereitstellungsansicht nicht durchlaufen.","List contains the products which are still in kitchen or bar view, as well as unpaid products that do not pass the supplydesk view.","La lista contiene los productos que estan todavía en modulo de cocina/bar, también productos impagados que no pasan vista de productos preparados."];var W_REMOVE_ERROR=["Ansicht nicht mehr aktuell - Liste wird neu geladen.","View is obsolete - List will be reloaded.","Vista no esta actual - vamos a actualisar la lista."];var W_FOOD_FOR=["Speisen für","Food for","Comidas para"];var W_DRINKS_FOR=["Getränke für","Beverage for","Bebidas para"];var W_ACT_NEW_ORD_EL=["Aktion auswählen","Select action","Que acción?"];var W_ACT_CHANGE=["Ändern","Modify","Modificar"];var W_ACT_CHANGE_ALL=["Alle Ändern","Modify all","Modificar todo"];var W_ACT_CHANGE_ONE=["Einen Artikel ändern","Modify one item","Modificar un artículo"];var W_APPLY=["Anwenden","Apply","Aplicar"];var W_CANCEL=["Abbrechen","Cancel","Cancelar"];var W_STILL_UNSENT_ORDERS=["Es sind noch ungesendete Orders vorhanden!","There are unsent orders in the list","Hay elementos in la liste que no han enviados"];var W_EXTRAS=["Extras/Optionen","Add-ons/Options","Opciones"];var W_OPEN_PANEL=["Extras-Auswahl noch offen","Add-ons selection still open","Selección de opciones todavía abierta"];var W_DEL=["Löschen","Delete","Removar"];var W_MSG=["Nachricht","Message","Mensaje"];var W_CHANGE_PRICE=["Neuer Preis: ","New price: ","Cambiar precio: "];var W_PRICE=["Preis","Price","Precio"];var W_WRONG_FORMAT=["Falsches Zahlenformat","Wrong number format","Formato de precio incorecto"];var W_TOGO=["Außer-Haus-Verkauf","Sale with Tax No 2","Venta IVA 2"];var W_YES=["Ja","Yes","Si"];var W_NO=["Nein","No","No"];var W_DISCARD_NO_ASK=["Es sind noch ungesendete Orders vorhanden! Sollen diese verworfen werden?","There are still unsent orders. Do you want to discard them?","Hay todavía ordenes non-enviados. Removarlos?"];var W_DISCARD_HEADER=["Neue Orders verwerfen?","Discard new orders?","Removar ordenes nuevos?"];var W_SEARCH=["Produktsuche","Product search","Buscar producto"];var W_SEARCHRESULTS=["Suchergebnis","Search Result","Encontrado"];var W_WRONG_PIN=["Falscher Stornocode","Wrong cancel code","Codigo falso"];var W_NO_ORDERS=["Keine gebuchten Orders vorhanden!","No orders available!","No hay ningún orden!"];var W_TO_PAY=["offen","to pay","a pagar"];var W_UNPAID=["unbezahlt","unpaid","no pagado"];var W_UNDELIVERED=["nicht serviert (+ unbezahlt)","not served (and unpaid)","no servidos (y non-pagado)"];var W_MOVE_PRODS=["Produkte verschieben","Move products","Productos a otra mesa"];var W_NO_PRODS_SELECTED=["Es wurden keine Produkte ausgewählt!","You have not chosen any products!","No ha seleccionado ningún producto!"];var W_MAX_PRICE_EXCEEDED=["Der Maximalwert für den Preis wurde überschritten!","The max. value for the price is exceeded!","El valor del precio es más que el maximum!"];var W_REORDER=["Nachbestellen","Reorder","Order una vez mas"];var W_REMOVE=["Entfernen","Remove","Removar"];var CHANGE_ALL=0;var CHANGE_ONE=1;var WORKFLOW_DIGI_WORK=0;var WORKFLOW_DIGI=1;var WORKFLOW_WORK=2;var WORKFLOW_WORK_SEND=3;function Grouping(b,a){this.set=b;this.sortedset=[];this.group=function(){this.sortedset=[];for(var g=0;g/g,">"))}function setLanguage(h){lang=h;$("#roomtableheader2").html(W_ROOMTABLE[lang]);$("#tableselection").html(W_TABLE_SEL[lang]);$("#actiontxt").html(W_ACT_NEW_ORD_EL[lang]);$("#actdeltxt").html(W_DEL[lang]);$("#discard_new_orders_yes").html(W_YES[lang]);$("#discard_new_orders_no").html(W_NO[lang]);$("#discardnewordersask").html(W_DISCARD_NO_ASK[lang]);$("#discardnoheader").html(W_DISCARD_HEADER[lang]);$("#change_unpaid_txt").html(W_UNPAID[lang]);$("#change_undelivered_txt").html(W_UNDELIVERED[lang]);$("#moveprods").html(W_MOVE_PRODS[lang]);var f="";if(prominentsearch==0){f+='
    '}else{f+='
    '}f+="
    ";var e='
    ';if(prominentsearch==0){$("#searchposition-normal").html(f)}else{$("#searchposition-prominent").html(f)}var b=e;if((workflowconfig==WORKFLOW_DIGI_WORK)||(workflowconfig==WORKFLOW_DIGI)||(workflowconfig==WORKFLOW_WORK_SEND)){b+=''+W_SEND_ORDERS[lang]+""}if((workflowconfig==WORKFLOW_DIGI_WORK)||(workflowconfig==WORKFLOW_WORK)||(workflowconfig==WORKFLOW_WORK_SEND)){b+=''+W_WORK_TICKET[lang]+""}b+=''+W_TO_PAYDESK[lang]+'';$("#commandbuttons").html(b);$("#waiterui").trigger("create");var c='
    ';$("#actremark").html(c);if(rightchangeprice==1){var a='';$("#actchangepricesection").html(a);var g='";$("#actdiscount").html(g)}$("#actionneworderconfirm_all").html(W_ACT_CHANGE_ALL[lang]);$("#actionneworderconfirm_one").html(W_ACT_CHANGE_ONE[lang]);$("#actionnewordercancel").html(W_CANCEL[lang]);$("#select-comment").off("click").on("click",function(k){k.stopImmediatePropagation();k.preventDefault();var i=$("#select-comment").find(":selected").val();$("#optionfield").val(i)});$("#act-select-comment").off("click").on("click",function(k){k.stopImmediatePropagation();k.preventDefault();var i=$("#act-select-comment").find(":selected").val();$("#act-optionfield").val(i)});$("#discard_new_orders_no").off("click").on("click",function(i){i.stopImmediatePropagation();i.preventDefault();parent.history.back()});$("#discard_new_orders_no").off("click").on("click",function(i){i.stopImmediatePropagation();i.preventDefault();parent.history.back()});$("#discard_new_orders_yes").off("click").on("click",function(i){i.stopImmediatePropagation();i.preventDefault();neworders=[];gotoOtherPage($("#discardnewordersdlg").data("link"))});$("#prodbackbtn").off("click").on("click",function(i){if(neworders.length!=0){i.stopImmediatePropagation();i.preventDefault();hideMenuProd();$("#discardnewordersdlg").data("link","back_table");$.mobile.changePage("#discardnewordersdlg")}else{parent.history.back()}});$("#searchField").off("keyup").on("keyup",function(i){generateSearchResults()})}function generateSearchResults(){var e=$("#searchField").val().trim().toLowerCase();if(e.length<3){$("#searchResult").html("")}else{var c=getProdSizeClass();var b='";$("#searchResult").html(b);$("#searchResult").trigger("create");$(".srinfo").off("click").on("click",function(i){i.stopImmediatePropagation();i.preventDefault();var f=this.id.split("_")[1];var h=getProdEntry(f);var g=h.price;alert(W_PRICE[lang]+": "+g+" "+currency)});$(".srplus").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=this.id.split("_")[1];var f=getSearchProdCount(g);$("#srprodcount_"+g).html(f+1)});$(".srminus").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=this.id.split("_")[1];var f=getSearchProdCount(g);if(f==2){$("#srprodcount_"+g).html("");selectedProdCount=1}else{if(f>2){$("#srprodcount_"+g).html(f-1)}}});$(".searchresult").off("click").on("click",function(g){g.stopImmediatePropagation();g.preventDefault();var f=this.id.split("_")[1];selectedProdCount=getSearchProdCount(f);clearSearchAndGoToHigherTypeIfExtrasOpen();levelOneType=0;handleClickOnProd(f)})}}function fillGenCommentsList(f){if(f.status!="OK"){alert("Fehler "+f.code+": "+f.msg);return}var b='';var e=f.msg;var c=0;for(c=0;c'+a+""}htmlComments=b;predefinedComments=b;$("#select-comment").html(b);$("#select-comment").selectmenu("refresh")}function initializeMainMenu(a,h,e,i,g){$("#"+e).html(" "+a.user);$("#"+i).html(a.version+" ");var k='
  • Module
  • ';$.each(a.menu,function(n,m){var l=m.name;var o=m.link;if(g){k+='
  • '+l+"
  • "}else{k+='
  • '+l+"
  • "}});$(h).empty().append(k).promise().done(function(){refreshList(h)});if(h=="#modulemenu-room"){var c=a.waitermessage;if(c!=""){$("#waitermessage").show();var b='
  • '+W_MSG[lang]+"
  • ";var f='
  • '+c+"
  • ";$("#waitermessage").html(b+f);refreshList("#waitermessage")}else{$("#waitermessage").hide()}}$(".modulebutton").off("click").on("click",function(m){var l=$(this).attr("href");doJsonAjaxAsync("POST","php/contenthandler.php?module=admin&command=setLastModuleOfUser",{view:l},null,"Problem Benutzerdatenpflege",false)})}function refreshList(a){if($(a).hasClass("ui-listview")){$(a).listview("refresh")}else{$(a).trigger("create")}}function gotoOtherPage(a){var b=a.split("_");if(b[0]=="menu"){doJsonAjax("POST","php/contenthandler.php?module=admin&command=setLastModuleOfUser",{view:b[1]},null,null);setTimeout(function(){document.location.href=b[1]},250)}else{if(b[0]=="back"){$("#discardnewordersdlg").dialog("close");parent.history.back()}}}function moduleForward(a){if(neworders.length==0){gotoOtherPage(a)}else{hideMenuProd();$("#discardnewordersdlg").data("link",a);$.mobile.changePage("#discardnewordersdlg")}}function getPayPrintType(){doJsonAjax("GET","php/contenthandler.php?module=admin&command=getPayPrintType",null,insertPayPrintType,"Fehler Druckkonfiguration")}function insertPayPrintType(a){$("#workprintarea").data("payPrintType",a)}function getUserHasRightForPaydesk(){doJsonAjax("GET","php/contenthandler.php?module=admin&command=hasUserPaydeskRight",null,hasUserPaydeskRight,"Fehler Kassenberechtigung")}function hasUserPaydeskRight(a){$("#gopaydesk_btn").data("allowed",a)}function hideMenuRoom(){$("#modulepanel-room").panel("close");$("#menuswitch").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();$("#modulepanel-room").panel("open")})}function hideMenuTable(){$("#modulepanel-table").panel("close");$("#menuswitchtable").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();$("#modulepanel-table").panel("open")})}function hideMenuProd(){$("#modulepanel-prod").panel("close");$("#menuswitchprod").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();$("#modulepanel-prod").panel("open")})}function addProductToQueueNoGuiUpdate(f,l,g,c,e){var b=getProdProperties(f);var a=b.name;var h=b.price;var m={name:a,option:l,extras:g,prodid:f,price:h,changedPrice:c,togo:e};for(var k=0;k";var l=groupedNewOrders.count.length;for(f=0;f1){k=""+g.toString()+"x "+k}var e=groupedNewOrders.prodids[f];if(h!=""){h="

    "+toHtml(h)+"

    "}var b=groupedNewOrders.changedPrices[f];var a=groupedNewOrders.togos[f];var n="";var c=groupedNewOrders.extras[f];if((c!=null)&&(c!="")){n=""+c+""}if(b!="NO"){b=b.replace(".",decpoint);if(a!=0){m+='
  • '+k+h+n+" ("+b+" - To-Go)
  • "}else{m+='
  • '+k+h+n+" ("+b+")
  • "}}else{if(a!=0){m+='
  • '+k+h+n+" - To-Go
  • "}else{m+='
  • '+k+h+n+"
  • "}}}$("#neworders").html(m);refreshList("#neworders");binding_neworderelem()}function getProdSizeClass(){if(osprodbtnsize==1){return("osprod-1")}else{if(osprodbtnsize==2){return("osprod-2")}}return""}function binding_neworderelem(){$(".neworder_el").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();var b=$("#neworders li").index($(this).closest("li"))-1;var a={count:groupedNewOrders.count[b],name:groupedNewOrders.name[b],price:groupedNewOrders.price[b],option:groupedNewOrders.option[b],extras:groupedNewOrders.extras[b],prodid:groupedNewOrders.prodids[b],origidxs:groupedNewOrders.origidxs[b],changedPrices:groupedNewOrders.changedPrices[b],togos:groupedNewOrders.togos[b]};$("#actiononneworderel").data("entry",a);$("#actiononneworderel").data("newcount",a.count);$("#actiononneworderel").data("groupedListIndex",b);$("#act-optionfield").val(a.option);$("#togocheckbox").prop("checked",a.togos==1?true:false);actionSelOnNewOrderElem()})}function sendNewOrders(c,f,a){var g=$("#typprodpage").data("table-info");var b=g[1];if(neworders.length!=0){var e={tableid:b,prods:neworders,print:(c?1:0),payprinttype:f};$("#typprodpage").data("neworders",[]);if(f=="s"){doJsonAjax("POST","php/contenthandler.php?module=queue&command=addProductListToQueue",e,a,"Fehler bei Produktversand")}else{doJsonAjax("POST","php/contenthandler.php?module=queue&command=addProductListToQueue",e,fillPrintAreaAndPrint,"Fehler bei Produktversand")}}else{if(c&¬DeliveredProdsAvailable){}}}function reloadPage(){tableListActive=false;setTimeout(function(){document.location.href="waiter.html"},250)}function gotoTablePage(){var a=$("#tables-page").data("allroomtables");var b=a.length;if(!isTogoOrderSelected||(b==1)){$.mobile.changePage("#tables-page")}else{reloadPage()}}function removeProductFromQueue(a,c,f,e,b){if(!b){alert(W_WRONG_PIN[lang]);return}$.ajax({type:"POST",dataType:"json",url:"php/contenthandler.php?module=queue&command=removeProductFromQueue",data:{queueid:a,isPaid:c,isCooking:f,isReady:e},async:false,success:function(k){if(k.status!="OK"){alert(W_REMOVE_ERROR[lang])}var i=$("#typprodpage").data("table-info");var g=i[1];var h="php/contenthandler.php?module=queue&command=getJsonLongNamesOfProdsForTableNotDelivered&tableid="+g;fillNotDeliveredProductsOfATable(h)},error:function(g){alert("Sorry, Fehler bei Produktentfernung!")}})}function reorderProduct(e,a,f){var c=[];for(var b=0;b'+k.name+""});a+='
  • '+W_TOGO[lang];var f=h.takeawayprice;var c=f.replace(".",decpoint)+" "+currency;if(f!=0){a+=" ("+W_TO_PAY[lang]+": "+c+")"}a+=createServeInfo(null,h.takeawayprodcount,h.takeawayprodready);a+="
  • ";$("#room-list").append(a).promise().done(function(){bindTogoOrdering();bindServeClick();$(this).off("click").on("click","a",function(l){l.stopImmediatePropagation();l.preventDefault();var k=b[this.id];currentRoomIndex=this.id;isTogoOrderSelected=false;$("#tables-page").data("roomdetail",k);nextPage="tables-page";$.mobile.changePage("#tables-page")});refreshList(this)})}})}function shallDisplayRoom(b){for(var a=0;a"+f+"

    "}if(c&&((workflowconfig==WORKFLOW_DIGI_WORK)||(workflowconfig==WORKFLOW_DIGI))){a+=W_UNDELIVERED[lang]+":
    "+e}$("#changetablecontent").html(a);$("#change_unpaid").off("click").on("click",function(g){g.stopImmediatePropagation();g.preventDefault();$("#changetablewhatdialog").data("show_unpaid",1-b);updateChangeTableDialog()});$("#change_undelivered").off("click").on("click",function(g){g.stopImmediatePropagation();g.preventDefault();$("#changetablewhatdialog").data("show_undelivered",1-c);updateChangeTableDialog()});$("#moveprods").off("click").on("click",function(s){s.stopImmediatePropagation();s.preventDefault();var l=$("#changetablewhatdialog").data("show_unpaid");var t=$("#changetablewhatdialog").data("show_undelivered");var r=[];if(l==1){var k=$("#changetablewhatdialog").data("unpaid");for(var p=0;p'+W_TOGO[lang]+"";$("#tables-list-togo").html(k);$("#togoarea").show();refreshList("#tables-list-togo");bindTogoOrdering();bindServeClick()}}else{$(h).show();$("#togoarea").hide();$("#tablemapcontent").hide();var k='
  • '+W_TABLES[lang]+"
  • ";var f="";if(ostablebtnsize==1){f="ostable-1"}else{if(ostablebtnsize==2){f="ostable-2"}}$.each(l,function(p,s){var r=s.pricesum;var n=r.replace(".",decpoint)+" "+currency;var o=s.prodcount;var m=s.prodready;var q=s.readyQueueIds;if(r!=0){k+='
  • '+s.name+" ("+W_TO_PAY[lang]+": "+n+")"+createServeInfo(s.id,o,m)+"
  • "}else{k+='
  • '+s.name+createServeInfo(s.id,o,m)+"
  • "}});if(c=="t"){k+='
  • '+W_TOGO[lang]+"
  • "}$(h).empty().append(k).promise().done(function(){bindTogoOrdering();bindServeClick();$(this).off("click").on("click",".info-go",function(p){p.stopImmediatePropagation();p.preventDefault();var o=g;var m=l[this.id]["id"];var n=l[this.id]["name"];forwardDisplayToProductView.call(this,a,m,n)});refreshList(this)})}}function bindServeClick(){$(".prodreadyicon").off("click").on("click",function(l){l.stopImmediatePropagation();l.preventDefault();var f=this.id.split("_")[1];var h=queueIdsOfTakeAway;if((f!=null)&&(f!="n")){var a=$("#tables-page").data("roomdetail");var c=a.tables;for(var b=0;b0){var k=h.join();doJsonAjax("POST","php/contenthandler.php?module=queue&command=declareMultipleProductsDelivered",{queueids:k},updateAfterDelivery,"Bereitstellung")}})}function updateAfterDelivery(a){if(tableListActive){updateTableList()}else{reloadPage()}}function bindTogoOrdering(){$(".togoorder").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();isTogoOrderSelected=true;forwardDisplayToProductView.call(this,0,0,W_TOGO[lang])})}function forwardDisplayToProductView(b,a,c){neworders=[];updateNewOrdersGui();var e=new Array(b,a,c);$("#typprodpage").data("table-info",e);nextPage="typprodpage";$.mobile.changePage("#typprodpage");neworders=[];updateNewOrdersGui()}function attachAndDisplayFirstRefTypes(e){$("#typprodpage").data("types_prods",e);var a=e.prods;var c=[];for(var b=0;b";if(applyExtraBtnPos!=1){k+='
  • '+W_APPLY[lang]+"
  • "}for(var f=0;f=0){b="f";h="check"}k+='
  • '+toHtml(g)+"
  • "}if(applyExtraBtnPos!=2){k+='
  • '+W_APPLY[lang]+"
  • "}k+=createHigherLine(l);return k}function bindExtrasSel(){$(".extrasel").off("click").on("click",function(m){m.stopImmediatePropagation();m.preventDefault();var a=this.id.split("_");var b=a[1];var f=a[2];if((b=="abottom")||(b=="atop")){var k=getProdEntry(f);var c=k.extras;var n=[];for(var h=0;h=0){n[n.length]={id:b,name:l}}}addProductToNewOrdersList(f,n)}else{if(w_extras.indexOf(b)>=0){w_extras.splice(w_extras.indexOf(b),1)}else{w_extras[w_extras.length]=b}var o=listOfExtras(f);$("#typeproducts-list").html(o);refreshList("#typeproducts-list");bindExtrasSel();bindHigherButtons()}})}function lastSelectedProdToStr(){return" ("+W_LAST_SELECTED[lang]+": "+lastSelectedProduct+")"}function listOfTypesProds(e){var a='
  • '+W_SELECTION[lang]+"";if(lastSelectedProduct!=""){a+=lastSelectedProdToStr()}a+="
  • ";var b=$("#typprodpage").data("types_prods");var c=getProdSizeClass();$.each(b.types,function(g,f){if(parseInt(f.ref)==e){a+='
  • '+toHtml(f.name)+"
  • "}});$.each(b.prods,function(f,g){if(parseInt(g.ref)==e){a+='
  • '+toHtml(g.name);a+=createProdInfoTxt(g.id);a+="
  • "}});if(e!=0){a+=createHigherLine(c)}return a}function createHigherLine(b){var a='
  • ';a+='
    ';a+='
    ';a+='
    ';a+="
    ";a+="
  • ";return a}function createProdInfoTxt(b){var a="";a+="
    ";a+="
    ";a+="
    ";return a}function createSearchProdInfoTxt(b){var a="";a+="
    ";a+="
    ";a+="
    ";return a}function createServeInfo(e,c,b){if(supplyright==0){return""}if(e==null){e="n"}if(b>0){var a=""+b+"("+c+")";if(b>=c){a+="
    "}else{a+="
    "}return a}else{return""}}function getProdEntry(e){var b=$("#typprodpage").data("types_prods");var c=0;var a=b.prods;for(c=0;c";var b=$("#typprodpage").data("types_prods");var c=getProdSizeClass();var a=false;$.each(b.prods,function(f,g){if(parseInt(g.favorite)==1){a=true;e+='
  • '+toHtml(g.longname);e+=createProdInfoTxt(g.id);e+="
  • "}});e+="";if(a){$("#favarea").html(e);$("#favarea").trigger("create")}else{$("#favarea").html("");$("#favarea").trigger("create")}}function bindFavEvent(){$(".fav").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();levelOneType=0;var a=this.id.split("_")[1];selectedProdCount=getProdCount(a);handleClickOnProd(a)})}function displayTypesProds(c,b){window.scrollTo(0,0);if(c==0){fillFavArea();bindFavEvent()}else{$("#favarea").html("")}if(b==null){idOfHigherType=c;var a=listOfTypesProds(parseInt(c));extrasMenuOpen=false}else{var a=listOfExtras(parseInt(c));extrasMenuOpen=true}$("#typeproducts-list").empty().append(a).promise().done(function(){refreshList("#typeproducts-list");$(this).off("click").on("click","a",function(i){i.stopImmediatePropagation();i.preventDefault();$("#searchField").val("");generateSearchResults();var g=this.id;var f=g.split("_");if(f[0]=="t"){if(c==0){levelOneType=f[1];c=f[1]}displayTypesProds(f[1],null)}else{var h=f[1];selectedProdCount=getProdCount(h);handleClickOnProd(h)}});bindHigherButtons()});$(".prodinfo").off("click").on("click",function(i){i.stopImmediatePropagation();i.preventDefault();var f=this.id.split("_")[1];var h=getProdEntry(f);var g=h.price;alert(W_PRICE[lang]+": "+g+" "+currency)});$(".prodplus").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=this.id.split("_")[1];var f=getProdCount(g);$("#prodcount_"+g).html(f+1)});$(".prodminus").off("click").on("click",function(h){h.stopImmediatePropagation();h.preventDefault();var g=this.id.split("_")[1];var f=getProdCount(g);if(f==2){$("#prodcount_"+g).html("");selectedProdCount=1}else{if(f>2){$("#prodcount_"+g).html(f-1)}}})}function getHigherType(){var c=$("#typprodpage").data("types_prods");var b=c.types;var f=0;if(!extrasMenuOpen){for(var e=0;e0)){w_extras=[];w_allextras=a;idOfHigherType=c.ref;displayTypesProds(b,a);bindExtrasSel()}else{addProductToNewOrdersList(b,null)}}function addProductToNewOrdersList(f,e){var i=$("#typprodpage").data("table-info");var c=i[1];addProductToQueue(f,e,"NO",0);var a=getProdAudio(parseInt(f));var b=parseInt($("#typprodpage").data("ordervolume"))/10;if(a!=""){var h="customer/"+a;if(a.match(/mp3$/)){$("#audiofile").html('')}else{if(a.match(/ogg$/)){$("#audiofile").html('')}else{if(a.match(/wav$/)){$("#audiofile").html('')}}}document.getElementById("audiofile").load();document.getElementById("audiofile").volume=b;document.getElementById("audiofile").play()}else{if(b>0.5){beep()}}var g="php/contenthandler.php?module=queue&command=getJsonLongNamesOfProdsForTableNotDelivered&tableid="+c;fillNotDeliveredProductsOfATable(g);if(keeptypelevel==0){displayTypesProds(levelOneType,null)}else{if(extrasMenuOpen){displayTypesProds(idOfHigherType,null)}}refreshList("#typeproducts-list")}function beep(){var a=new Audio("data:audio/wav;base64,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qJrx4KOQjahZxWbcZgztj2c49nKmkId44S71j0c8eV9yDK6uPRzx5X18eDvjvQ6yKo9ZSS6l//8elePK/Lf//IInrOF/FvDoADYAGBMGb7FtErm5MXMlmPAJQVgWta7Zx2go+8xJ0UiCb8LHHdftWyLJE0QIAIsI+UbXu67dZMjmgDGCGl1H+vpF4NSDckSIkk7Vd+sxEhBQMRU8j/12UIRhzSaUdQ+rQU5kGeFxm+hb1oh6pWWmv3uvmReDl0UnvtapVaIzo1jZbf/pD6ElLqSX+rUmOQNpJFa/r+sa4e/pBlAABoAAAAA3CUgShLdGIxsY7AUABPRrgCABdDuQ5GC7DqPQCgbbJUAoRSUj+NIEig0YfyWUho1VBBBA//uQZB4ABZx5zfMakeAAAAmwAAAAF5F3P0w9GtAAACfAAAAAwLhMDmAYWMgVEG1U0FIGCBgXBXAtfMH10000EEEEEECUBYln03TTTdNBDZopopYvrTTdNa325mImNg3TTPV9q3pmY0xoO6bv3r00y+IDGid/9aaaZTGMuj9mpu9Mpio1dXrr5HERTZSmqU36A3CumzN/9Robv/Xx4v9ijkSRSNLQhAWumap82WRSBUqXStV/YcS+XVLnSS+WLDroqArFkMEsAS+eWmrUzrO0oEmE40RlMZ5+ODIkAyKAGUwZ3mVKmcamcJnMW26MRPgUw6j+LkhyHGVGYjSUUKNpuJUQoOIAyDvEyG8S5yfK6dhZc0Tx1KI/gviKL6qvvFs1+bWtaz58uUNnryq6kt5RzOCkPWlVqVX2a/EEBUdU1KrXLf40GoiiFXK///qpoiDXrOgqDR38JB0bw7SoL+ZB9o1RCkQjQ2CBYZKd/+VJxZRRZlqSkKiws0WFxUyCwsKiMy7hUVFhIaCrNQsKkTIsLivwKKigsj8XYlwt/WKi2N4d//uQRCSAAjURNIHpMZBGYiaQPSYyAAABLAAAAAAAACWAAAAApUF/Mg+0aohSIRobBAsMlO//Kk4soosy1JSFRYWaLC4qZBYWFRGZdwqKiwkNBVmoWFSJkWFxX4FFRQWR+LsS4W/rFRb/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////VEFHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU291bmRib3kuZGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAwNGh0dHA6Ly93d3cuc291bmRib3kuZGUAAAAAAAAAACU=");a.play()}function fetchTypeProdsFromServer(){doJsonAjaxAsync("GET","php/contenthandler.php?module=products&command=getAllTypesAndAvailProds",null,attachAndDisplayFirstRefTypes,true)}var waitProdTimer=null;function fillTypeProdList(b){var a=$("#typprodpage").data("types_prods");if(a!=undefined){displayTypesProds(b,null)}else{waitProdTimer=setInterval(function(){var c=$("#typprodpage").data("types_prods");if(c!=undefined){clearInterval(waitProdTimer);displayTypesProds(b,null)}},200)}}function fillTypeProdList_(a){displayTypesProds(a,null)}function createTxtAssignedProd(e){var b="";if(e.option!=""){b=" ("+toHtml(e.option)+")"}var c=e.longname;if(e.togo==1){c="To-Go: "+c}if(e.pricechanged==1){c+=" - "+e.price.replace(".",decpoint)}var a="";if(e.isready=="1"){a+=" ☞"}if(e.isCooking=="1"){a+=" ♨"}if(e.isPaid=="1"){a+=" ☑"}return toHtml(c)+b+a+"
    "+createExtraParagraph(e.extras)}function createListElOfAssignedProd(b){var a="";if("count" in b){if(b.count>1){a=b.count+"x "}}if(b.isready=="0"){return'
  • '+a+createTxtAssignedProd(b)+"
  • "}else{return'
  • '+a+createTxtAssignedProd(b)+"
  • "}}function fillAssignedProdList(b){if(b.length>0){notDeliveredProdsAvailable=true}else{notDeliveredProdsAvailable=false}$("#cancelcodefield").val("");if(cancelunpaidcode!=""){if(b.length>0){$("#cancelcodearea").show()}else{$("#cancelcodearea").hide()}}else{$("#cancelcodearea").hide()}var c=new Grouping(b,createTxtAssignedProd);c.group();var a='
  • '+W_KIT_BAR[lang]+"
  • ";a+=c.outputList(createListElOfAssignedProd);$("#orderedprod-list-0").html(a);refreshList("#orderedprod-list-0");$("#undeliveredheader").off("click").on("click",function(f){f.stopImmediatePropagation();f.preventDefault();alert(W_UNDELIV_INFO[lang])});bindingOfAssignedProds(c)}function bindingOfAssignedProds(a){$(".notdelprod").off("click").on("click","a",function(k){k.stopImmediatePropagation();k.preventDefault();var g=true;if(cancelunpaidcode!=""){if($("#cancelcodefield").val()!=cancelunpaidcode){g=false}}var b=$(this).closest("li");var n=$("#orderedprod-list-0 li").index(b)-1;var h=a.getItemsOfRow(n);var p=h[0];var c=p.id;var m=p.isready;var i=p.isPaid;var o=p.isCooking;if((i=="1")&&(m=="1")){var f="Entfernen oder nachbestellen?";var l=this;doYouWantDelOrReorder("Produkt wurde schon zubereitet und bezahlt",f,W_REMOVE[lang],function(){removeProductFromQueue(c,i,o,m,g)},function(){reorderProduct(p.prodid,p.extrasids,p.extras)})}else{if(m=="1"){var f="Entfernen oder nachbestellen?";var l=this;doYouWantDelOrReorder("Produkt wurde schon zubereitet.",f,W_REMOVE[lang],function(){removeProductFromQueue(c,i,o,m,g)},function(){reorderProduct(p.prodid,p.extrasids,p.extras)})}else{if(i=="1"){var f="Entfernen oder nachbestellen?";var l=this;doYouWantDelOrReorder("Produkt wurde schon bezahlt.",f,W_REMOVE[lang],function(){removeProductFromQueue(c,i,o,m,g)},function(){reorderProduct(p.prodid,p.extrasids,p.extras)})}else{if(o=="1"){var f="Entfernen oder nachbestellen?";var l=this;doYouWantDelOrReorder("Produkt wird soeben zubereitet.",f,W_REMOVE[lang],function(){removeProductFromQueue(c,i,o,m,g)},function(){reorderProduct(p.prodid,p.extrasids,p.extras)})}else{var f="Entfernen oder nachbestellen?";var l=this;doYouWantDelOrReorder("",f,W_REMOVE[lang],function(){removeProductFromQueue(c,i,o,m,g)},function(){reorderProduct(p.prodid,p.extrasids,p.extras)})}}}}})}function fillNotDeliveredProductsOfATable(a){doJsonAjaxAsync("GET",a,null,fillAssignedProdList,true)}function fillOrderVolume(a){$("#typprodpage").data("ordervolume",a)}function checkForLogIn(){doJsonAjax("GET","php/contenthandler.php?module=admin&command=isUserAlreadyLoggedIn",null,handleTestForLoggedIn,null)}function handleTestForLoggedIn(a){if(a!="YES"){setTimeout(function(){document.location.href="index.html"},250)}}$(document).on("pagebeforeshow","#typprodpage",function(){lastSelectedProduct="";tableListActive=false;if(nextPage==""){reloadPage()}$("#tablemapcontent").hide();$.ajaxSetup({cache:false});hideMenuProd();getPayPrintType();checkForLogIn();doJsonAjax("GET","php/contenthandler.php?module=admin&command=getOrderVolume",null,fillOrderVolume,"Keine Ordertoninformation");$("#workprintarea").html("");var a=$(this).data("table-info");var c=a[0];var b=a[1];$("#changetablewhatdialog").data("fromtableid",b);var e=a[2];$("#typprodpage h1").html("Tisch: "+e);$("#optionfield").val("");fillTypeProdList(0);var f="php/contenthandler.php?module=queue&command=getJsonLongNamesOfProdsForTableNotDelivered&tableid="+b;fillNotDeliveredProductsOfATable(f);$("#workprint_btn").data("tableid",b);$("#gopaydesk_btn").data("tableid",b);$("#workprint_btn").data("tablename",e);bindPrintButton();bindGoPayDeskButton();bindChangetableButton();bindSendNewOrdersButton();getUserHasRightForPaydesk()});function bindSendNewOrdersButton(){$("#sendorder_btn").off("click").on("click",function(a){a.stopImmediatePropagation();a.preventDefault();lastSelectedProduct="";if(extrasMenuOpen){alert(W_OPEN_PANEL[lang])}else{sendNewOrders(false,"s",gotoTablePage)}})}function bindPrintButton(){$("#workprint_btn").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();lastSelectedProduct="";if(extrasMenuOpen){alert(W_OPEN_PANEL[lang])}else{if(neworders.length>0){var a=$("#workprintarea").data("payPrintType");sendNewOrders(true,a,gotoTablePage)}else{alert(W_NO_ORDERS[lang])}}})}function bindGoPayDeskButton(){$("#gopaydesk_btn").off("click").on("click",function(b){b.stopImmediatePropagation();b.preventDefault();lastSelectedProduct="";if(neworders.length>0){var a=$("#workprintarea").data("payPrintType");if(waitergopayprint==1){sendNewOrders(true,a,goToPayDesk)}else{sendNewOrders(false,a,goToPayDesk)}}else{if(notDeliveredProdsAvailable){goToPayDesk()}else{alert(W_NO_ORDERS[lang])}}})}function goToPayDesk(){var a=$("#gopaydesk_btn").data("allowed");if(a.toLowerCase()=="yes"){window.location.href="paydesk.html?t="+$("#gopaydesk_btn").data("tableid")}else{alert("Fehlendes Benutzerrecht für Kasse")}}function createRoomOrTableList(b,c){var a='
  • '+c+"
  • ";$.each(b,function(f,e){a+='
  • '+e.name+"
  • "});return a}function handleClickInChangeTablemap(a){$("#changetablewhatdialog").data("totableid",a.tableid);$.mobile.changePage("#changetablewhatdialog")}function displayTableDialog(e,g,c){$("#header_tchange").html("Tischauswahl");var f=shallDisplayRoom(e);if(f.show){$("#roomOrTableList").hide();$("#tablemapcontentchangetable").show();d=new Date();$("#mapimgpartchangetable").attr("src","php/tablemap.php?command=getTableMapImgAsPng&roomid="+e+"&"+d.getTime());var b=new Tablemap(e,null,"");b.bindingForSelection("#mapimgpartchangetable",handleClickInChangeTablemap.bind(this),f.pos,e);if(c){$.mobile.changePage("#tablechangedialog")}$("#changetablebackbtn").off("click").on("click",function(h){$("#tablemapcontentchangetable").hide();$("#roomOrTableList").show()})}else{$("#roomOrTableList").show();var a=createRoomOrTableList(g,"Tische");$("#roomOrTableList").empty().append(a).promise().done(function(){if(c){$.mobile.changePage("#tablechangedialog")}refreshList("#roomOrTableList");$(this).off("click").on("click",".info-go",function(i){i.stopImmediatePropagation();i.preventDefault();var h=($(this).attr("id")).split("_")[1];$("#changetablewhatdialog").data("totableid",g[h].id);$.mobile.changePage("#changetablewhatdialog")})})}}function resultOfChangeTable(a){if(a.status!="OK"){alert("Fehler "+a.code+": "+a.msg+"\n\nMöglicherweise hat ein Kollege\nin der Zwischenzeit Produkte zugestellt.")}else{alert("Tischwechsel durchgeführt!")}window.location.href="waiter.html"}function bindChangetableButton(){$("#changetable_btn").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();var b=$("#tables-page").data("allroomtables");var f=b.length;if(f==1){displayTableDialog(b[0].id,b[0].tables,true)}else{$("#header_tchange").html("Raumauswahl");var a=createRoomOrTableList(b,W_ROOMS[lang]);$("#roomOrTableList").empty().append(a).promise().done(function(){$.mobile.changePage("#tablechangedialog");refreshList("#roomOrTableList");$(this).off("click").on("click",".info-go",function(h){h.stopImmediatePropagation();h.preventDefault();var g=($(this).attr("id")).split("_")[1];displayTableDialog(b[g].id,b[g].tables,false)})})}})}function createHtmlOfKind(e,a,k){var g="";for(var b=0;b"+c+"
    "+h+"

    "}}return g}function createExtraParagraph(b){if((b==null)||(b=="")){return""}var c="";for(var a=0;a"}return c}function arrayContainsKind(b,e,g){var a=false;for(var c=0;c";if(o.status=="OK"){var b=o.msg;var f=$("#workprintarea").data("payPrintType");var g="";var m=$("#workprint_btn").data("tablename");if(arrayContainsKind(b,0,1)){var e="

    Speisen für "+m+" (Printer 1)


    ";var l=e+"
    "+i+"

    "+createHtmlOfKind(b,0,1)+"

    ";g+=l+"
    "}if(arrayContainsKind(b,0,2)){var e="

    Speisen für "+m+" (Printer 2)


    ";var l=e+"
    "+i+"

    "+createHtmlOfKind(b,0,2)+"

    ";g+=l+"
    "}if(arrayContainsKind(b,1,1)){var c="

    Getränke für "+m+" (Printer 1)


    ";var k=c+"
    "+i+"

    "+createHtmlOfKind(b,1,1)+"

    ";g+=k+"
    "}if(arrayContainsKind(b,1,2)){var c="

    Getränke für "+m+" (Printer 2)


    ";var k=c+"
    "+i+"

    "+createHtmlOfKind(b,1,2)+"

    ";g+=k+"
    "}$("#workprintarea").html(g);window.print();setTimeout(function(){document.location.href="waiter.html"},250)}else{alert("Druckdaten konnten nicht angefordert werden")}}function printJob(h,c,f,b,g,a){var e={header:h,table:c,timestamp:f,prods:b,type:g,printer:a};doJsonAjax("POST","php/contenthandler.php?module=printqueue&command=queueWorkPrintJob",e,null,"Druckfehler")}function updateNotDeliveredList(){var a=$("#typprodpage").data("table-info");var c=a[1];var e="php/contenthandler.php?module=queue&command=getJsonLongNamesOfProdsForTableNotDelivered&tableid="+c;var b="#orderedprod-list-0";fillNotDeliveredProductsOfATable(e)}function doJsonAjax(a,b,f,e,c){$.ajax({type:a,url:b,dataType:"json",data:f,async:true,success:function(g){if(e!=null){e(g)}},error:function(k,g,h){if(c!=null){var i=c+", Status: "+g+", Error:"+h+", Msg: "+k.responseText+" ("+b+")";alert("Kommunikationsfehler zum Server: "+i)}}})}function doJsonAjaxAsync(a,b,e,c,f){$.ajax({type:a,url:b,dataType:"json",data:e,async:f,success:function(g){if(c!=null){c(g)}},error:function(i,g,h){}})}function doYouWantDelOrReorder(e,f,c,b,a){$("#delOrReorderDlg .sure-1").text(f);$("#delOrReorderDlg .sure-2").text(e);$("#delOrReorderDlg .sure-cancel").text(W_CANCEL[lang]);$("#delOrReorderDlg .sure-do").text(c).off("click.delOrReorderDlg").on("click.delOrReorderDlg",function(){b()});$("#delOrReorderDlg .reorder").text(W_REORDER[lang]).off("click.delOrReorderDlg").on("click.delOrReorderDlg",function(){a()});$(this).off("click.delOrReorderDlg");$.mobile.changePage("#delOrReorderDlg")}function areYouSure(c,b,a,e){$("#sure .sure-1").text(c);$("#sure .sure-2").text(b);$("#sure .sure-do").text(a).off("click.sure").on("click.sure",function(){e()});$(this).off("click.sure");$.mobile.changePage("#sure")}function changePriceInActPanel(a){if(rightchangeprice){$("#act-changepricefield").val(a.toFixed(2).replace(".",decpoint))}}function actionSelOnNewOrderElem(){var b=$("#actiononneworderel").data("entry");var a=$("#actiononneworderel").data("newcount");$("#act_count").html(a);$("#act_name").html(b.name+" ("+b.price+" "+currency+")");if(b.option!=""){$("#act_option").html(" ("+b.option+")")}if(rightchangeprice){if(b.changedPrices!="NO"){$("#act-changepricefield").val(b.changedPrices)}}$("#act-select-comment").html(predefinedComments);$.mobile.changePage("#actiononneworderel");if(a==1){$("#actionneworderconfirm_all").html(W_ACT_CHANGE[lang]);$("#actionneworderconfirm_one").hide()}else{$("#actionneworderconfirm_all").html(W_ACT_CHANGE_ALL[lang]);$("#actionneworderconfirm_one").html(W_ACT_CHANGE_ONE[lang]);$("#actionneworderconfirm_one").show()}$("#act-select-comment").selectmenu("refresh");$("#togocheckbox").checkboxradio("refresh");$("#actminusone").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();reduceOneNewOrderItem();actionSelOnNewOrderElem($("#actiononneworderel").data("entry"),$("#actiononneworderel").data("groupedListIndex"))});$("#actplusone").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();increaseOneNewOrderItem();actionSelOnNewOrderElem($("#actiononneworderel").data("entry"),$("#actiononneworderel").data("groupedListIndex"))});$("#actdel").off("click").on("click",function(c){delOneNewOrderItem();actionSelOnNewOrderElem($("#actiononneworderel").data("entry"),$("#actiononneworderel").data("groupedListIndex"));actionNewOrderConfirm(CHANGE_ONE)});$("#actionneworderconfirm_all").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();$("#actiononneworderel").dialog("close");actionNewOrderConfirm(CHANGE_ALL)});$("#actionneworderconfirm_one").off("click").on("click",function(c){c.stopImmediatePropagation();c.preventDefault();$("#actiononneworderel").dialog("close");actionNewOrderConfirm(CHANGE_ONE)});$("#actionnewordercancel").off("click").on("click",function(c){binding_neworderelem()});$("#discount1").off("click").on("click",function(f){f.stopImmediatePropagation();f.preventDefault();var c=b.price;changePriceInActPanel(c-c*discount1/100)});$("#discount2").off("click").on("click",function(f){f.stopImmediatePropagation();f.preventDefault();var c=b.price;changePriceInActPanel(c-c*discount2/100)});$("#discount3").off("click").on("click",function(f){f.stopImmediatePropagation();f.preventDefault();var c=b.price;changePriceInActPanel(c-c*discount3/100)})}function actionNewOrderConfirm(h){var c=$("#actiononneworderel").data("entry");var n=$("#act-optionfield").val();if(rightchangeprice==1){var f=$("#act-changepricefield").val().trim();f=f.replace(",",".");if(f>999.99){alert(W_MAX_PRICE_EXCEEDED[lang]);return}if(f==""){f="NO"}else{if(!$.isNumeric(f)){alert(W_WRONG_FORMAT[lang]);return}else{$("#act-changepricefield").val("")}}}else{f="NO"}var g=$("#togocheckbox").prop("checked");if(g){g=1}else{g=0}if(h==CHANGE_ONE){var b=c.origidxs;neworders[b[0]].option=n;neworders[b[0]].changedPrice=f;neworders[b[0]].togo=g}else{var b=c.origidxs;for(m=0;m0){var b=c.origidxs;var q=b[0];var l=neworders[q].prodid;var f=neworders[q].changedPrice;var g=neworders[q].togo;var n=neworders[q].option;var k=neworders[q].extras;for(m=0;m0){$("#actiononneworderel").data("newcount",a-1)}}function delOneNewOrderItem(){$("#actiononneworderel").data("newcount",0)}function increaseOneNewOrderItem(){var b=$("#actiononneworderel").data("entry");var a=$("#actiononneworderel").data("newcount");$("#actiononneworderel").data("newcount",a+1)}function group(h){var x=[];var e=[];var z=[];var s=[];var o=[];var g=[];var v=[];var w=[];var a=[];var m=[];var y={count:x,joinedvals:e,name:z,price:s,option:o,extras:g,prodids:v,origidxs:w,changedPrices:a,togos:m};var u=0;for(u=0;u+ "+toHtml(c[t].name)+"

    "}}var q=z+"-"+o+"-"+b;if(f!="NO"){q=z+"-"+o+"-"+b+f}if(l==1){q+=" - To-Go"}var k=y.joinedvals.indexOf(q);if(k>=0){y.count[k]=y.count[k]+1;idxarr=y.origidxs[k];idxarr[idxarr.length]=u;y.origidxs[k]=idxarr}else{var n=y.count.length;y.count[n]=1;y.joinedvals[n]=q;y.name[n]=z;y.price[n]=s;y.option[n]=o;y.extras[n]=b;y.prodids[n]=p;y.changedPrices[n]=f;y.togos[n]=l;y.origidxs[n]=[u]}}return y};