From e46d89de7b1c408d1f6e21f524156b2bb2fccee0 Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Fri, 25 May 2018 19:27:00 -0600 Subject: [PATCH] Add button to attach customer to sale (close #5) --- action.php | 39 +++++++++++++++++--- database.mwb | Bin 15150 -> 15211 bytes lang/en_us.php | 2 ++ pages.php | 1 + pages/pos.php | 43 ++++++++++++++++++++-- static/js/pos_customer.js | 74 ++++++++++++++++++++++++++++++++++++++ static/js/pos_finish.js | 2 +- 7 files changed, 152 insertions(+), 9 deletions(-) create mode 100644 static/js/pos_customer.js diff --git a/action.php b/action.php index 5487e49..346ca74 100644 --- a/action.php +++ b/action.php @@ -99,7 +99,7 @@ switch ($VARS['action']) { ]); $binstack->update('items', [ 'qty[-]' => $i['qty'] - ], [ + ], [ 'itemid' => $i['id'] ]); } @@ -135,7 +135,10 @@ switch ($VARS['action']) { $type = $tx['type']; $cashier = getUserByID($tx['cashier'])['name']; $customerid = $tx['customerid']; - $customerline = (is_null($customerid) ? "" : "
Customer: $customerid"); + $customerline = ""; + if (!is_null($customerid) && !empty($customerid)) { + $customerline = "
Customer: " . $database->get('customers', 'name', ['customerid' => $customerid]); + } $itemhtml = ""; $items = $database->select('lines', ['amount', 'name', 'itemid', 'qty'], ['txid' => $txid]); @@ -173,11 +176,11 @@ switch ($VARS['action']) { if ($change <= 0) { $change = 0.0; } - + $totalstr = number_format($total, 2); $paidstr = number_format($paid, 2); $changestr = number_format($change, 2); - + $html = << @@ -200,11 +203,12 @@ $customerline $itemhtml
+Total: $$totalstr +
$paymenthtml

-Total: $$totalstr Paid: $$paidstr Change: $$changestr END; @@ -232,6 +236,31 @@ END; ], $where); $items = (count($items) > 0 ? $items : false); exit(json_encode(["status" => "OK", "items" => $items])); + case "customersearch": + header("Content-Type: application/json"); + if (!is_empty($VARS['q'])) { + $where["AND"]["OR"] = [ + "customerid" => $VARS['q'], + "name[~]" => $VARS['q'], + "email[~]" => $VARS['q'], + "phone[~]" => $VARS['q'] + ]; + } else { + exit(json_encode(["status" => "ERROR", "customers" => false])); + } + + $where["LIMIT"] = 10; + + $customers = $database->select('customers', [ + 'customerid (id)', + 'name', + 'email', + 'phone', + 'address', + 'notes' + ], $where); + $customers = (count($customers) > 0 ? $customers : false); + exit(json_encode(["status" => "OK", "customers" => $customers])); case "giftcard_lookup": header("Content-Type: application/json"); $code = $VARS['code']; diff --git a/database.mwb b/database.mwb index 985c57c50fa0a45e180986ff1b47741ecd0ca6da..5e1329723a280d0d688074182b54c4ddf497f29e 100644 GIT binary patch literal 15211 zcmZ{Lb97~2vu%uyZM$Q1Y}>YN+qOEk?VQ+2M;&x*+csYM_kH)>d*ArpIcL`zqxP!v z$KGqKS+mwGc_~mZR3IQAC?KiKHt7nt7XBM%AfOCqFd)P)ud$txi;an`Go6i_A)UL8 z^|_Ch+bVm*#p~NQ`rK3>Q-ThOtDN~=ALP~b-PwpFKz4c#1wA5=i7cstjAA`c&xb#; ziBzocb_q=JNtkXTE_$D!iVt|*$-va-Ez1#skC{h;=|B(OYU#rDXV&|^S)`Qr-1zt_ z={RKT+bZLZAA1277Q#|pCw;EincZ-1j-B79``r}HCwe212m4F1!UA6o+CfhHu$dnR z=gTwKMclH2j|Tc@X2Q)=8Rab_m0YNMub+38BuAIIt)qAHOb;G~tuXE|j2!MxA04dl1W3_twB5eV*y_?=*E9Brg3n=UKk}&ul4d zEqK!1sMHr&^woLzB}A#Ids|sRM{`I+L&{sig*^K`bSD#pO}yn>ZhNaue9Hm`FIZT`@8IH zVU;~$iTdXpeEd$lW2P68XtRo!`cE3~Zomi{H|Q;L-!sg1|5)95K3n|CPk|eNhlAZs zIW_Xn1V&Aw=YIITp=qgGvZGr{7S9G}Jd_}X=*b*Cq}iJTOuJ^h%Y-*6Bg%U_n>nh^ ziE3y|d0U8x%YT+u2la56*752LCUUFd3`Op2&-Lt*#jHtW;Ii+`K=0SO%l8dF0`t$< zEdvg(98q^!PXv6gaA)g)gI`5x!;ALY7QSN6%19;dJOD)ce6SXGKEXkG@m2?8*}YGE z)=LwKQd zv0o8&ae`QXvt)3=pnL~U0_qmoP0QU3cmr#QD-yZ4BX%3l9Q3Z%EY#z3!MKNF=+&a-RyQ(wQCg3u)HDi+KYSC|#Fa}}Y}2)}dT z6nle_pidLwO4hSFEGjH{9|GOeFz^BD-f(AiX?x%r)8sy_Kit#bQ%9r=Q}@CJ{vN7x z4RlUPh{qD@4&K6y8J=eo8s%}YrQcLK!A!&7LuZhiq5!ZDeBc6on-w11XHb2|O*NxJlp!&CcUIf zE5oi&2Pf(C_V%@lnB}BM=U)e7n{z*tjccsn+$cyFE{r2UV9T2pPbrgY%>0xH2pI@& zU8t9(d9FXEGJ_tklx5NU^hEE75XufNU-|4$my9nCyW5!%kWzLaS40Nvw2@+j2ZumK z01BfD*{8O4nsQU7IMWH;xK$f69e(UC=EiO0ZtD1SvjVBA3615Hu=751t8^CH$lJLv z_6or}YJ60^K_p8}x3*d?esG^f{SNX!FwLGpM5V1CUCN^F7L9WvD~%3fCub2obscMQ zdgQ#2s}(J}kl9sG(W5?=v6^a4w0rb6V4=Ap^`g8eotF=(&h@4mV{N9sLRZPmppbgO zyDE|YQ3On06SD$Ac{%3WV55vi#mXF85r9y(Lb>sWm6BhDqz03;Bd8)lWNpdpqdi*@ zO68nKZ2rbVkOlxRkA~7kCvCIAKyu9XJF|bT_r~0OsL00uCRRGo#;9VX(q}hK5>wx@ z&|Pjd4@fCS|2v#3q*4%}GvaNP3l~|Ha^*ZJ9sY$yEP+OMY;#4Kb9MDwTa4xAk2-~S za>L?atfgGr;K?fz#^(|Z$kiOFGoxpT{&(G!()|JcZqvv*sF0Gm?=Y*0-*owfeu`Hv zi**|f!CPQ0Iy%;l0+sCPSMG#i)!NCxf9nrbwkHKio5Mck;Dwg=YZkLhU@+a$Na^~C zdNrYfP&d}640=xL^+H=+q6D}5^vQe2d~?qFjxY<{BKhkO+Mx!5nCHg)4*XE0_1=+$pISB=!{2B zqx1tq*HS0O--H;aqIBezbyg$8!rzx%zY`49Z1#CqDKx@7FCE-4zE>>K9vZ#O7stop zIrF-@_&7WdFU;2O-zPs(`EYKnGo8tgOt&ZGTP$5+C$c7hjIK+rlr8oZRVy@7SDT8j zBqy=H7o5^k*t`sl$2SSg0GuRNrMfQi53PgwCl@BNWY&Tg;~OI8HZPRN&@(GfSM|ph z%9c}AnTxE)s4{(JK2wxf-&fqlmkCW)yL5F?zC@6rKzE|2OYQQX9cwDNbzKOyYMzn^-|==n#)TQ9H@Q`v`Q*z&tK{-!lmpa z|LC`LS58(yjnml3c?@@3on*y~u^g;!5BQOZkb=NBOvU4eiQpnQ92G4nx?E5YNcUaPNir(iSmQB9%DYi6JqubGEHb+YqY%S5cNO+L4 z8w^Rymv9_jj^=SNGB*BxvVqJ7gsSTfLoal0;8r%?%~a7jj@# z^+yB_(l9jnkH-;0ZBdiJ%Be>l?z(YZ=_RKyy%JBBg%#DBDqM&Sm?^uVF`o zsGi5C8^d;wimmktMA9U${%|W|cBwNPYNi1$c$0vbDx2&_Yf$FSzFGO!bp>`%Y3Z$+ ztkC|$Xb<~?;*mfwS)ud^|EKlzh*|l;J<9HPWZ*ZM+|ZqZ-U6hUmJknn>`0B@g*h;3 zi;TYu@w0AW(@N*Otx8C4;;&*G81hHJJ6BOUNl>q9tlV1y6P-4%CIMSd^vv;Lkn^Yf zKGP^kjbe3&3ewq7M*dyz{yYbU{#~(s_*(TWo8?0E35R{0aiE)SS!y5cHd~b+wFq9s ziVskCZ^2LO_Ci2iJit8bN}gA?}_C2M=rLr4c{;AN61||TJEPT zLwaKtbH{~G=VyX<_h!`RhE;Co_->nwZ%kTpB68Z7LGe!Y?{9(vZdO}{MOgR6Z(ipz zIq4i}&F085m`%1?#S=IgW`{+{b-})FN0x@R4f!LEOMqy|J~%|a zmf1Q4@ug!YoDs+9bf@S9u?&IqqfDp=@At(=JQhwF^6p`V6edq;dvi^SP_H&+CqzbO zj1ZRYWg|ig61HAM2(NlANB9UAhu1+jHd-I~H7Mf>$B{m=>YqI}YCU|RFS}5dE+7kN z%aZt&301{l+*t38>k?)ZsB09OhT+ z*>t}5tQ8EX!T;<2GO0UZ;Li82vTAXpHvQz8d6l{FQ-BsxHNMf!fKpu-Cr=}=dx792 zpb+;>=o6H^8Ck@+FkAmlN>P6K9*meSXi0AKvvXA=`rJma5ziqmuYjtSNe`&qaSBjl zbVEnfP5TI-kCIUu!9X2cX2P>|l;2K*1PrxCX=*AYt`N8WgBGdcS>HQ}u}n>!w6lRdgVk{cm)WtVbgVn3<)bDMR}3NH+3Kid&}OgOza0t8bt zIG2I0puer~?1AEY6>>j7YdY8#0OP;r28SWL`5UxQp}2Ah5%0X}kRn;kodHLT9Eb}G zf8TP;5EdR}3lIhq7xp(;6yMEpzs&)$^njGZF31$Q02!3YAzhWOFD> zs_UX~*q!ZX_5mXrp(cH4rT5V>PVFMNI9#5F0z+asd*tN?LBzhD6L}pb<&m zD(vq!+l7bwY#0WCxq|%&`dW}KR090U8R(<1gm)%{U)Oeyn5lK|=W~RT&>)s4W{p0y z1Py%m0D4!K4RquJd&dyT3gwCJzkwfskF(WO8|Nu#_yGM7I0CPeSGSC_6h-UbRnw;% z-2v*wzt$yH#^yN^3bF8a64X8Abs_^S4S&}=f7eno@I7a!XFZM^eXG;k3;^uW}Z_$HM|6BkFYzi&KNAIyS=F?^WcjW6PNa!N*Xd>sSS^3WhYJvs=Y&H)k^jv+&bhT#r4}(5 z016br(N#ED=~>GlRycJ4EMprOPz?3ehs*UIT#7eLX zYu^ehUQQ5Tcx9pJf`7TB`DPhYPfHwBTHC8ZwW8H5v_eLC=E8vB&L!>qRKL4}+6V7<9M|;XpEI1`8;&{EG3as=qLn_! ze$k19ri}b7`L-;1V=3#>acB{5lriZ1EW{U1*Urc~LE6XZN+_4cqu4ta{&T`Pc*$B# z5cX@ADJ#f(M~*VQ;1z+trmy%3n4pU-p)CQz2vkI@NMU6|HcU{ddXhxvfjiR#2 ztksd>+G3AzeEoJzz;fAkE@G??Y&I<+-lj4VMAq|%hDhHz9WdRIt%`!O6S~kop)&lK zDKE*Jb%DLSc=Qez4N~i-^SXY&AVq&HxJ%G$fIB4^_E8NH{0`f!{8uF6W5Otj_)y^FmCg{_Q)E zC;#bb%9X648or{72?L(EoPNVSA)_rZ6HB1tKz^gEKjb8_TXZ-iirqVL3vNGbMAm_& z#_aq4eDwajK7VKhN_ijJ7V4MtePdSsEm0Pkd+#Vk!U^rS#B}SDJ`B&|T9p!ZV8IaU zF^=<4%Nuorti^4-DHos^$vXMq!euQNHO720^A`!7&_d=yjxE{dh1gRYvWhg{oDLtr z_ge|&>Rf2Ama+|NU;Q2V(=Yk?Zw$>Sdao?i9BSmF00ou3^B@Q1V&1$jPE?Wa&aV}KoadyJzUS%WO2cjkz9G&w8iO;eXdX`ETwaq?><_cR zRvHqqve}ukQ-H+V3aVKqB(7xkp5`^c+Y7Rtvj!!&J9x?y372)vK+yc!?h&w`@&XXr ze?VP;5H!hk3LOTq0_2x$c+K~PqpgNYNROq7(e-rX?;*n+&$akh|#xQIA`@)e4T^Kd7-j>v;AH5?qTDr*7rj)6H;b><;z0g!ob0R*0 z%FOr$tzK(#Qd>&x%bt?0O-{OPvQ@YwL6?drntkN zESXKh;*d>~=!EpwUo=sD@e%MvE!mYjm{cN*pdy>nL_nM7I_T6gF$Q3sGp%tn{fhHp z8O+ko?Yqf9S<%Z@88Rf$H|Hdt3Vc3ZeUCUDIFB+K7gBFLNxV27dO|!)?%sHwpO;p)0{cp5 zqb(W5;yE4?+fCPP-ROKQ@$bIr@H>HI$M!eJ=U2L)iX%BX)&0z;!!*%^y(9R`K zcU78g>UVb+X0YQT-i1BhbP6ksr3uv{e+&aSuy0Qn^1Z{*xcfBZ_HLA0yTQE)6vQw{ zdH#N0gQ*EZa=~AW<8r3BS9iFcg0&u3ng=AUg&<8#kbSt#>T6iZHj>juV2Cr?_@W3G z?J%usK1@O0#EB13uQcN^;zybk_(l`1qL>N@b+v^{Vm9nEZB}2y0^V68EljVSTQB{7 zNdbcQ7pH*!;uJ&dzkocwKs+%gT`q8sw!!!j_~mSdhI1rAD|vvaIv_pmr;C?^=yua* zu@;=C_vQM9pt<${TtsB3Hk=wRqN)NK-XTr9R z`cHcwat){L;(8vY)$caAWlrOI4(5qTd(Q8OO_KmNc?><ekO&HeJ2VmPSxpa`fv?)Gq9h8SMhfRw+7tNe(bQMD|3zM+so~r*V~TDsYM9;6PZ`YPi__Nzi_cw?>=%(n?(1N zos{QL-^Zz3)230%0wxk=lZg2R7c#I7vRIG~(&o`DfiW{{U9qo81xOPfv+jc?Bc8J> zN!5F+@6J(M-D7D_n|i*K)+A!8Wn+tyi3f^6o0t5vnzscjshdqpva=a6xGhm)dGnU= zU+-JS>O?FLdQSiB0m&SsyL`E+#B5&XL%6qs&20W9D&)Pz(tIdbRoZ+=+l#s+M&A3V zI_(#Ff5&=cd3z_~vcYose#q`Hp0+NFr7YnWLz8Aln%#U47Cy^Esn6yxXfvt3tc%k) zun#2^Iu#8qu^8?x1m?zu@L)+K1j3JbKln4f8V-sNxAh0;uTg(_$OMV|wQ*y<^bjmI zkkACpwG0;bYy4`h`r5oxW-mZes5HvF7#*(B!W~{N$i82eTQvPQ6(*k1Y~4D;5m;s@ z1}Q+UoSug$l(W+MsETPtV?Q5^vyyW`W1j=b8BIv7-kLnQQMcLs$BYUMoz!(q8q}3t zd*xE$V1x~}EzE0P2nws9*ApB$j6px$5J+k0cQ8ZiMyfq!{uY4 ze2BR8T#h=qpo@W3duzI~)z{d4M9tPC7YT&Sw_L-!vN=UrJAPcVTa!UK)zqk4j& z8iO7FdaL0`oiEB$2+86p-qN|V(>Lsv-#T4jF!UAi?}9Y{C)1z%h&eDoqI2mY=rb# z4TXHJ{$_}E7^+R3^)PiU^mU~gKS1kRz?ZZfE~tC)dv(Wc&G@Kcn{HtumMONJNTS^H zL3>*WdNH_wf%Jy`>0Qr*KzLVYKzN&AT89Ztzl!z{T?K<49&wN=RAsymqvETji#~J? z5@1$6T><>aAYiU=AXFewU{K2b{H#U4faJ9oF8T-<+R{xNVR)Ks$=S|nOjTc`w-dQ# zeD${(h-zG_P~;CH+cxDH=Xx?upR%*5b}TOLB^&(S$|9K)BJ0tn$l%fk3q`R39~u?!SA%w`3CKskN&i6M-V;xiXq21ySBA*@zcWN(x(3;Dxz_?#x7yv0B6DG< z4HkTr%(KLeriZ3VP8<{rgh!U)IGP?m3)F@Q+zu*wP3j*RkRN5Bo#irm@F%c382PP1 z&N?v}czLHQxH_rg@&8u=#zW~8-g-;Am_5+C3THX3b+m?v0>y*6PKg5xrlXZ(p$zNa z)fbt6RbO2HslNQX1gz9hOkaNSH`&55r3r>>j4d)hA%{hM*6GjP&|zUW=a$fQR05l-5=oI6`7rB^~VSVs?DV!ypsA=BrOszG>ftneg>A4^PLH z+YpMrlbFO!T=m?>!4xD3CQY_V_dh@)+0K*;uP>hGy?Z4}mQfgLp0vG9>b^y)Ka+wY^Cgz?6Wh4IGJmEzxk_3L!BqrbHtm4ZXqWU|LTr|fTPd?ZvlWl;CL zUHvM=fa@EHm`>77H%tthBrQoIP(=WyP;Y#E`@uw4$9y!ILq&nB zY->*WF&_m&k|-V!y&Zgs)8O`ii-WTWgwh`!G1dr-p8=|BJgo>CRAY{lypNM?a)h<( z9DZviv>j?9A`wHTl@JuYJ=G%?)UVx(HCV%F0I-vuBldx&i=-*HgkpxJhDcKhehL}^ z#o6*0ov@3<358Mn>A7mkwoHu${rNQTB2n~GpQ3=q%^GLY!n4pHC>9pqdrRZo>1YarceY0{t%w;{_sPT%%M^f;M1&{P|K zYn^T@yG6CL@*$@s$c@!7yPxYb{(3StuzGhr@wBGKj@}NnrlX_n<$iHIvj(`zO&`c= z)%X&KHJjxQsPh7(6T&J)%{W9WP|a9B$TR5*8=tAO0Ehs;ldkRRG&SncE%jzm=L*ug z%a&rBo1KMSF0m`fiH=f6zqu2|9={r6QlpcWU2aXbk7EOez32Ju{^CRvc{)3tnPCC! zDAi9p$L}0}O9T?aJv^TWq>~#b^*BDefkN~b8R&232#>&GEpa=EWyj8yJF$D)*i@mV z)}P#^^A0AQ#kTY_k-!&^6A`;9sj-j;d+AB2r94jkiN2vSqdWDrcH*cLzqqYf$*i9Z z{JzaptVjwKghH7347ZIYq@$S?5vb8~N&%04F2Dmb3r!*dGhsEf*8j{PzX~xd@impqVL+qU!E8TC6nlY>MoU+~IVE2E%OzQ<^f6J@9Q^p*R*=8}T-R=pB(G!7(l?aT=V znFpRb#A_lgF!f^|T*8=4?B0cXYIWEY9Dr`z?QJIhgGa z98MAZ04Pac6qVTxQ)i+K2-TJSP@mg>Jsn`FAoVeHew3~-=`aK(cX9CWy+3{*{%olJ zG%DAer&sgS*2OK8QF*nvxWJm9@#%(3o1-V->*-PYQGBBL=x;-{)(6z=?Bt4aeSEvP zU#uj!fQn!8kP{Zfuz+ z$kGR{6FBO{*~8)fUdco;Ayk3`(n^slEz)i(ja&;H5Q^6ZX(h&$7D`_Wy6jKo)B4if zKyGZIKD$l6W9_I43Px@eaO~)TGn%8Nq>^@}h}2m5Jlil95kn?V!0Y>wXRbrQr}yc3 z7x&0UP*bzH`F5HYQ&j=As)C}Wy3oXk($Vp@D?2+l`T6nTUx=x`;7N1JKx-MVxMG&{ z3t~x$p}X|z_+)2imkh%p?bi=n1oa$bcQ@;g_3QgZxl}f_!!Qdq@0Z?^->ayp4rvc} zj&G9}8uJYoiEwGkKTRuBrB&2=_@OI55wKL&$>mHA5 zr#JErfGgqHy9{2tANT#LJnK%c99p!UJ1CBYGe4csxgVM615#A$cD@5>SC!J12SNL` z`ec@b4z$y5b5c9teV54LL6=DRIllKho4^dxQ*7xTV*mJgoYEI_K|5H({*&^Lew6p` z8#_jv#IV^v15OFZYkXb*$d0Hkh2CwtgMD3+t&+GRJav&3GDpOC_6P&DhtZ;(igMAS zYp&ikWCNFGw;(d>pqk`NsLvuT9UtI-GU=eIvlK`aON)u7D@1EZ6O+2wQ}q?DNPQjd zCz+iO8OEqr&{sOM3eS~A&U?CjXI`0g!a@QTBN+a3~1~kwoVYGAXm_MM0=W@ zr`&&sDaQ|T;JTL8`5*-}$-2uXriwOkQA_k0>k65;WIUXg|26DMnI92i)l=UrI&66Gwc`m6Y>Xbo5VqONK-`U&jML0A^KKA10?XboP$ z>YoIpVk3`cfI$%~oj10Qul!T)G3mpF|2u!hIf=?Hs%oYZra%SC=Uk}CPj=N1mfpc; zyy6JpsuOnA{9d8}JQ;GrHA>Z(E2n+H&>g5hn*V%_zsfFJ*#xz|M)NZsf2rnaC`#E4 zE1XJ%90{bx2DSroUIko5)(E_j=DCY}4udo*Qb<4ta9M`!%X-{R@|7P*hd+>72bdbl z6d|6SR(=s?}zk#Thtm|Rn^AT0DonFR@z40OFq7M7X8?Nz@b)C{EyzR&UAmDOWLzp_(Z#@%KK;^8l z%Kw~jF%r%jsH$H5Xtv^@z%Q&)6~HFcvatF%Y#rpu=OoB@xZ&mnRP@ ziBL)~=@Ju9QSKVNf*ee}4y9w4rL`t6o^IGw-y61c5x(8NEkBX%Fg?1B@ru~d$q!gT z?yFJ1Ed{*n6?{mDBAhk8okI-Q^pCw;mO-)=B3siXpOh;BuF@TmhuV`9v%Sp32>2`e z=+~BGzlsR1B(Ys4oY5GMgO%ar6a?=;Inc#H78j@}uvRQ-x&q(u17e*;#EBNfiOh(4 z!VLQG1H9;c-`BK7?BD0-U{0UChR?w^W;g=cdq45Ou4%!pO$`~qt_cELeX#Q zY#F1e5B4@JD0z=U9Nwluo~^6rSa;gQHMj*=$iT4l?$6FA`Gb036oT*+h$ImB2953fiH{f9svF-}gFYs1eJqB8vW5nqcGhq|F zVG=siF)@gryU!Y&?UIK6#O%pB>*sr~qyu8)=>(lX^SyC?(A*Cal6~a+AnbpMLf}%i zfQ;Hs2~24=b#3YThd_XRa7?~tsILr4ykbr#%ucMWU97;!FPSK;FyuB|+mIAQu{;V0 zZwd4b|G_4Im>RQM&SB;qd+!qS5-QG{+9c3 zsboltG^qh{u6^osD`z>N{~j7uNxSLk^Ku=&ljvivXJI|Ukg|SIK5v_t9?sBMVbPRt4o61jy^?$ zsR;;jPr30(g0DfBWN;L!Y(_nc7Ne)3Uy)OfHd^C7N#yxCQy|jnJ2)bevMHE{Dphx5 z^vv^D?wNoVcb%-L@~2AY?%xtDGI}24x&A>-o~ze?38Iu+g#@jKbq!MIL%xrdht#HN znd~Eu_cd*_niF`U{Xre12=<8RkbG46MMSGzq$~0U?lEp7e&!)-b^GUfId{LY(>N|z z0kh*AAwI=APoFKuzDK9EVm&+yy28Hhd<=*4oUMvZ8ST8BcicxZchBy-eL>(`IU)5W zM$@L9BSOV@Zbfg*AK>5O>8iIpG`_EHyJIhj^8*4Ku(!>5%n$#{DD=#aD%>d?`wMmy z@~Q2xqeQ%ZdX(GsI_F4^CT4?)uw2W(##CmG4zpr_qsLI%vO#{xqlmRFjtORZ4OxvK z;`~wGW=t*_ET)mB)J$mE5@5w2qleNCJtq`M0vD+B#u|93GQO!mE`LU*WYVDH6SvM) z)RXS+*JfjbTD8l=Cg`G!5ImzO7*LBzz#mGcpHpMcQB*uv*cp8I4lY9=aE#7f9otC> zwJPJ>pg>B`MZ^ogR;R-psZlGQ9zCt~yzd4j2+265=>z$5d$IqIr?p=2j&!tw#WStD zWM&;D>YvyOD{${S${W?+4!=^XW(tIc#Z=E~m~wqpM_!eWAV#7LN%MRvzOU)XDPpxJ zh;-Jy7nL_c$GmqDQ-wfcLQ`)2gFM%j$fcfPeT`Ku z)RRqwD(+bISqveRC`J^70D_3`5@^5LN({q{&aqQei6NP&vZ(<#DU+HDC^7bO?;gqC z*-JD#3w6ZlMxa>_`zDZowX{}{{t?}%s&2ti@arlHmUr=R`!P{F><r;bXHG3X1%S&aS^swHS2Pe%0SWe}`6~T>z(}?uPlR zKf46;5OckQf4+<-^9aV(OS)HoeypObrEF*e>u9%q z96vui#$jBSMmyGeKT_`o9bE7GXc%7H+ySUSKJp86Bv(8ppFV3tlX)y8+eaD`F3f8} z!N)7j8eEFz*o_Ri^VMaX5e#GyYn!;%5Maj;&IA9rh|}UxDPHYy8K1=DL`S zB)c`maL^+`QJQ9X#6L3Z?D|82-ntVChZ?fZ!1XhmXCv;8hi5m3S7kcaXw5DKO|s#e z?b;)p+}M|HD=d2i3j+q<5~-r42;H59vuk9eRWnx)F3FnJ@3GGL1Amwus+!$<+i@FN zt%D9f6+z|l<-FyPcQUSK%<*YJ*I*o<$TnlKc6s+tFf9MmOvU8;8!&>GirM<=eQ8#* zgt~jePLBHDBSejz>&j{bzh{*~?nLYHpVo9qjr8~RTM#mWV zj1|QG1iE>4-^*3%9_d?$Z8bDxLFTHu#AY7w<&nV@5T(tGRBr^)CRvznT*T<{d`HF_ zY|Wi@`~V_Jn<&pYF@mVeBckYnvHPB}T0V`$6j$hV5`fK<-6HxGzI`Us&s!Zf{`^bA z)mY*W3hKHiIa$P)kJD_La<28c>W$3Sc^#o(qZd&pfUZphY^hFuAq~A#R!ReeUMBuy z3fG67F0AQ`PYLraBX9Pb?kMNbMJCxAvJEPj93_NYF}}5fV3W(D4Z-gCaIRlP2F%pQ z%_p$@zx#uLfLe9iq_;%|G9bSCg8p7$UzfF=krgu&GY1RMf6apeV*lzR0&yKn|7Vgs z5D?7QJbq(CdSe4;13F{Fb4?jL+#i@Z%cEjREWx#ukrj~<6)7br0Q{-2^BEx_R7B!C z5(z0UqHD88!$vLFmVBPXrrvbEzG^no4-m*2`#>Rj`>p%o+ny&%s1>eDQUSPEy^O+xC!O$UI#li`&HyDxYJ(F}IxZgv2R`~z%~9N{8GhIa?>L0`OURbH+gY2sSUr`?gqhMXy}pelX(iC zpjGXbZ=ma3-}&G~jv>K@oX+ipd?PN=e#KjVsa+8q!rzleLlzV?nGB_Xb6GLoL z6A&R2il3@(-{4Z3l~IP=zoksj{K@(ThL6ywjZJmsZvBYF*gE~OXYux|!>r8RDmR6W z0FOhhSugtjffdZW_P#|(&VxV~`;#0=bc-MsT2UIBLC?Yx6+*5G?en{7me6y00u}{y z$V~zsEXfT2E=+W>_$(%R59&(~>f0H3+}TiH-*(%eu*FDb#t^lXm6{q|>@$D?ubPgA zp5y&;i(%=-k2LKzh(6HsO7%*J0mFOWbf_;s#%O?KWA2YpZ7~~l37Llw)&?vb{o&9X z>}~rZs8oglbN$-f%>b)WrS7cTxQI-;n%2;Swgsu4N2!CDTtmJ}vC5>?4fCDT*z&RX z&4H;bP1m0eQ(U?)4R>8`cm50?@@ANJOhbmziM~h>!A`AQ*uiOc!ad$oWNybF)K)rh>NwnyAN|KwnYZT)cj_pvxQMX)>`JeIeIRlkCd|@ArtgU#qIj$BGzEg#zy~4Yu9cN&g2%f2MH*S%Md2xTO?q%ynj z=)uf?&LI$!@Y(9d=1=x7ir5S(VrilVFW1L_7J|HTVj(j<65hv9j5yH~$-s}Z} zt{~aOz74biSN?r>5FU$df zetpZoMh8wHATA&o44!LPk166oP@R(Mph=)hIa1X{tvHL#~T0u literal 15150 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�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 "Receipt", "close" => "Close", "print" => "Print", + "customer" => "Customer", + "customer search" => "Search customers", ]); \ No newline at end of file diff --git a/pages.php b/pages.php index 8cfa00d..2323e1a 100644 --- a/pages.php +++ b/pages.php @@ -21,6 +21,7 @@ define("PAGES", [ "scripts" => [ "static/js/bsalert.js", "static/js/pos_items.js", + "static/js/pos_customer.js", "static/js/pos_payment.js", "static/js/pos_finish.js", "static/js/pos.js", diff --git a/pages/pos.php b/pages/pos.php index 85fc950..4d1f8d6 100644 --- a/pages/pos.php +++ b/pages/pos.php @@ -5,17 +5,17 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ ?> -