From 0b9cff662e652b19d9af1444de7cf349c340a8ab Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Fri, 20 Feb 2026 15:37:24 +0000 Subject: [PATCH] Autosave: 20260220-153724 --- admin/customer_service.php | 97 ++++- assets/pasted-20260220-151143-1fc00a8c.png | Bin 0 -> 13466 bytes db/exchange_rates.json | 2 +- includes/lang.php | 46 +++ recharge.php | 458 ++++++++++++++++++++- 5 files changed, 582 insertions(+), 21 deletions(-) create mode 100644 assets/pasted-20260220-151143-1fc00a8c.png diff --git a/admin/customer_service.php b/admin/customer_service.php index 10cd196..71acece 100644 --- a/admin/customer_service.php +++ b/admin/customer_service.php @@ -175,12 +175,49 @@ ob_start(); + + + + ${remark ? `
[备注: ${remark}]
` : ''} -
${u.message}
+
${lastMsgText}
UID: ${uid} ${ip} @@ -351,11 +393,23 @@ function appendMessageHTML(m) { const timeStr = msgDate.toLocaleTimeString('zh-CN', {hour: '2-digit', minute:'2-digit', second: '2-digit'}); const recallHtml = m.sender === 'admin' ? `撤回` : ''; const isImage = typeof m.message === 'string' && m.message.indexOf(' +
已发送收款账号
+
${info.bank} - ${info.name}
+
`; + } catch(e) { displayMsg = '[支付信息错误]'; } + } + if (isImage) { div.style.padding = '5px'; div.style.background = m.sender === 'admin' ? '#007bff' : '#f0f0f0'; @@ -363,7 +417,7 @@ function appendMessageHTML(m) { } div.innerHTML = ` -
${m.message}
+
${displayMsg}
${timeStr} ${recallHtml}
`; @@ -374,6 +428,45 @@ document.getElementById('plus-btn').addEventListener('click', () => { document.getElementById('image-input').click(); }); +const paymentModal = new bootstrap.Modal(document.getElementById('paymentModal')); +document.getElementById('payment-btn').addEventListener('click', () => { + paymentModal.show(); +}); + +async function sendPaymentInfo() { + const bank = document.getElementById('pay-bank').value.trim(); + const name = document.getElementById('pay-name').value.trim(); + const account = document.getElementById('pay-account').value.trim(); + const note = document.getElementById('pay-note').value.trim(); + + if (!bank || !name || !account) { + alert('请完整填写收款信息'); + return; + } + + const info = { bank, name, account, note }; + const msg = `[PAYMENT_INFO]${JSON.stringify(info)}`; + + const fd = new URLSearchParams(); + fd.append('message', msg); + fd.append('user_id', selectedUser); + fd.append('ip_address', selectedIp); + + try { + const r = await fetch('/api/chat.php?action=admin_send', { method: 'POST', body: fd }); + const res = await r.json(); + if (res.success) { + paymentModal.hide(); + // Clear inputs + document.getElementById('pay-bank').value = ''; + document.getElementById('pay-name').value = ''; + document.getElementById('pay-account').value = ''; + document.getElementById('pay-note').value = ''; + fetchMessages(); + } + } catch(err) {} +} + document.getElementById('image-input').addEventListener('change', async (e) => { const file = e.target.files[0]; if (!file) return; diff --git a/assets/pasted-20260220-151143-1fc00a8c.png b/assets/pasted-20260220-151143-1fc00a8c.png new file mode 100644 index 0000000000000000000000000000000000000000..86ad672b508191b534281b2b336b8506c8eadc06 GIT binary patch literal 13466 zcmZX5c_7sJ|39ymujAAxdj&UD3hVSz|Gw+%GeSUw+RO_eeXFtSEpB3#{X(E5tDGXRxtS*b8`nXP;!HU zX~s9C<=Mm|4_A9@;cpuh^0T8W;m6c%hbUnf7kBwb(`XS<4E*Jk1B;F$d^*E6=YLQz zWf{Pl5aLN0_)l_lAhPN!-juRPNq>(V#ogH@VLj63SM`en@>kxcammMaJ=53}ICp%_ zeOu(XbogWvRQNlO6i{~}SrCRxT#F63w2^%z4{hSsS$?nsnI`Otj_;A#+Y(j?0V1Y$N0X;Z^hxP zMd{lb$dT$&>hGUCSv_H~kJi%F@13v%8z${>quxzk%S9d|8RP}B#XgKZn z|L9$+o9s2=&~3W$isNGz*!x@KsRdVl=v`P8z$Uxtt35TYq4rel&he$>+eg+ta2RT< zJE9oxJ^j>7UdBV2Vz%h*r9><6nS1ZPUrS9%9&mY+5`6`M$IXT1K*5>xr@!s|J%4Ss z#_``9iel9F_~Eowl|0^OHucpP#kT1W#Vct|?_q}?`&PxaQ)d1_5P1;9MGGnw}&X~EmKtzT~U zT@M@~KQ^<;EoSklVRloO^sGHjPLsT%jMb;9Ugd&Hi*Drlj>Pg)yM{MT>`S*!^<+P2 zECHTtEsm>ZHeER+Fd9da|417~ckOBtrT>6mnw@X9O_a{moUx~u@ehqtqv>;R#d-xg z=B&A5PtCSgC;#%?j8x|)-)fse#O<_5@=ECJ@3&`mmVS%qv@CiCegX)j8w8(Wdf;E) z%lC=qN5vhPhN{@Kt?`-ZlhgE$#N-vSi;V|o2k!__}37CUHM@=a8=j3diT(XoY_4IX?B`V{&^!HnJ3Xl|LLMVwd9gnn7}z_ zcIRKBJXrmyi+VK|k?UpjGSCXpCMDyviw7>LZ|$eQ@nrugMiX!#QK7isj_T?7y6K1c zc)2irYh}I~AsECku22@o@C*KrwF^q-tkjgWUmx*n2#w68V4tZV0mMM`8{p@~?+hHl zr)W4TiV{5Kv%TNX+=n`2<@9Z9wp-JGQLEVSA{S13fPHR$-p7PuNR)0DFuftv!mSG5 z6!kWj{0aHn8pH(kTui@3e#&82_?(@=PQGDAn~q>|-ao0n8l@^C72msV`9_!cE`c}> z8}8HWYE{l{QjM1@i~l*PFwkWBZC&WXBmEl0yxbI7WWdvFGptfm>Ft};xS1R2TU9Rr zRZJ1|G4OZI*$CA6L@`#F;Wm{Wv5`}Vx;5Bg;LVy9#GD<>g4G{i+*9rNFA?~)dPyH)D3UF{D@WYdd}PC)!O zM3mq&uDdIWzmcIYemcjl<;m#J0$In`z@@QS3kgh-l66V&Qwd)pD)qxqS8mpL<3kC* zNT4dAHW8|tfsa(}GXiBa|Hwkb{bFNEVRqfBzsDCYU>&J_q|Nu^uXY0Nti{`&*llb< zm@AEL-G~GiU`|t4#TI3*SZpQF?ne768MM4t%6Y_r(u(Xh^~Wsuj`!eZ2X8ed}a4K{R4bsVLbrd`F5AvA@`|?=&CB5 znFF6r`kTA(caeOhW=>OGmfBO(Pzi`|EiR0IkOWmv{2r|j3(q4$GH=!0;4d*{#hZ>3 zhSRma3e1wRAlCL|u-r~f5&Tvc(+>P+Yz8s+>i)PMRUYX%!*RH6G8u_AJVX~|k5T8M zZr~AT(hwW9gr7%%mPJqWII0ARM#O*vD+jdW2t$qC@JHUaBFzlE-)fxu5umX}tPi1B38W%!F3F>=#n_ASqS?6~*e{SX z!w5u(2vJl5+C}OLy6`iql7atZ#S9TdknW8yj#3umV#)-1s0C|`r+*`d*rA1}K1kx` z3;ebJIj6>FX2VxAmJeZA&0H7-MuERiJs)Ke2U8XGg8Q6t5>%Dv&K3wYaf@L;(&pco ziv%Ao(;r++DK9IZYXT+K8cZ`HTQLabdy^S2P?ay~?AB*4RHEPcZv+U=ieD^E!4V=) z8i1ZyuQAPdWGBGtYsnM{?`8wSzikuPaS=%FH)8C57}gd_=zRwqRBb*+CGI_s_yZRY z#ui|?=V_V%9Oi~&)RMsU1)v3nqj>5~;3^%w%;aui9Lk`Z6<|~G?6`orb09(O;t~!H zeWu7tg_A=aAP0PQe?fq7gv4XJdv_}ZIOv(1Qo>`)X^1pWG0ir>p#z*kJDO}Eum~!o zcG`Z00@mh$_puSSFLLNHu_A#N1NURX$by*UlgD? z0(3h9i=+_FFDSVIxqW-~uf2+!eHb$Sfxn8B#50u?se-)%Er-BKf5mKJE)>*7ho9~lQQRY#*41hBV`GG8@Ri!;jL0fQxQ z9G?&iyl*(d#S;kyrrR)JM66|?Jl*qL1~tm?O`yaG-zq@~G4TLVvl>^;88)Jh8x;av z;FPfO_Igw$Mu>Zs8M&f#H=NpXjJj_rlm?#&0oSu2J!qpW~-xQAs>Bg7Zni-0aAn%B%ucx zJ_o)m(GRQf%mB_f4so_U@3r8j%m5ADyo%gSV$Hi*aCgn@&A_wg$J|kS(<_X|6*qO= z-Hbvu3;^Y{N9pt+IrQMaw%5{9!bemsjTVY!N~Dw<{llDgR0c)#Vi zOw{RKJO=J)H}7$)7-Zodgu9PLL5TVosnHP9ncyBJ5xQ9Pigk7bZU@;74^VC|1JIrR z9~KZ8S(`Za8FS70ZD78K@uI;Io7Gn)5g;EhI_aIy$0R}|gWK~Vrmc9lsb z^Cbd@0>UfBU&_?Do{8|&2~vBNA0I?YDU!C>=%HxFB=Fli&dtPlNX)~Bh=eqYK7j&m zf@P@d4sAyaBmcK(BgqYVP_c%mR%)W$NEm{B8J7$#-1>+DS_z7epdVU5mN4WoRX}P5 zPUbX4BKaBD##m)=aM|$|Edi-7_8|92Q$14Vip6c1u)&DULE$;(#kS&Gr6`652fLOI zhh+;%fhk9nA6P&jHbh@0!s2@= zchnHZigqceVZ=&+>_snMFTMqdkXpcm(z|9WPK@z6A+^Joyq?=g`fZx=ov6OFLOxI- zMA{)Y4$rHu?B)g=tLo-^R%m(nCX>OwY)91z)4Id;6TEn)O*A7Mu$fh7qu!{H4`n*R zs39%n4qDA;XoFGv>MBB_1ZmdQXf2Sc5~PYaY#`8hF5IwZdWr^j^rOl<{~ti~wN2es z1kvVQENifqeGq3qHXjv;#s;hC>YS@66d-B=7{^zM_8^xzX|IHy5_BElQ;%-puc-3) z5F14u5&-fD&atRp+J~U%e4LRixgqon+-fiHCJU6e1ge@Z99yuugyspO&};bQ^l=_R z5whm>aD%4-sq}5hf^smQ4p>A@r_px_4A}+Xs?3b!UF097w*F|!dJb4Tzojc6RSTrz z3&$541f(t?q)vZW;VuE=lM|Ep2&BesVg&$h2LO#$z7KCU6-bo_QaRN#dD(A;rW*vc zDA0VA#tfHb1P>-$W+g$gMqY{n2ARNM@qgI7Fi|C&|BWcd#ANvAs5OF3ry;JFgzn`G zCb1rYABcOrc5qMr;L4DdbhZS)&g!~+ zlFyN;32;Oldpc+>FsT10QDKFO%58Y@D#Q}>3Wdam2$h8|$Wh4N&8Ll#; z@lSJCu!2u*Pgd6Qc%PQi`;jCM0vL5aNJXROAXE!!t8o#=fAD>gGy=HLBIfa2hwhLG z_yuExgu9m-WoVRnrUVw!d}jX236zSg%+~9NDB;fyLY%qWPfSmLLo%Jlly=!rn9CZL zw^6AqK`IqmW!GV=RNki-aUc{fgq_Jn*liCh*|Y&nAj#k2B8oYmA)|C>zV$H{K!`#5 zIW^wh*&_Bb%w+9h-Lj)INJ-FfO$UvJ8$Lj~_EL1%)9L%_u2qY^{f+8!*OOlr7sy|~ zk+Qxz-JyDddS);P@;%lL(%DmsL))%rmG&D{Ph7z#>wDk$r}{TS`q|JI)%%yjwAV&4 zarDdA&k`%}ALv?ZY1s$Y(mlVgrq%X0-uUNzef7j}gQfeN z^qSE>e|vS|RCl}k)csdxxCXMm3N|nJUEEUt^EhZZHRLS5eOI3&-5>aF;JtgMq30E8 zkBXu&dt6r2xm$h59>#syphp5H&$Cjehu5&n7w-1hdH0<8`f9naEPs!`8o8dJ%-LLh z5;FSDb+)cVt;D*%ca|wcmn;spz&=KEzJ99z%G70P4@)^~ljB&+loh?#smwUn$exx# zpV*L`t62#SSz28Kez*GclM@_z$%b)C)3x!vL>G^LLX|md+wU8C8Y=zD_y-K8n#OX# zEEr+qruNY_kM=zeewXd4WaSg}M}oZymU`KT9^0nVn^2ciUpIBG;DOmd2YCkK>Mg0h z@8){fPH#K6y_0H~trZh%Yo4?-;k`1J9+yeqPHVYRWGjvD^Yep7m7n>$h9_P@4PP%T zFE3jUcqIh(vA-VR#7batzzZGJ&O}u&S}8llFNLL=5$)RQa+tPi@x8@a>95R&sFay$ zy*TS#ONp;$v`#E$H62mp6vYIK0S6MXQOd2FCKW>$?ztErh`aKb%SODGrHN9nzMQ4I zvY#TQzb^HMWc{(hz`MKT;<{u@ZLl8p&~;_*45{gb&h0e-b!9I(IYG0kz~?f4?g?44 zI2|u94&^`GB#(*3UPNl*?2!8Egx62E3Y4dP-7}HqYmEAC%6jIgT@uwMs^GA>w48Oy z5w%vIzUSuO`bNEvYl7O!Qo-bEjJ1XzuD8zZR%{0mmr#qn^GZ{Re&F><@7DCuB(mAJ zt*Y$%2riVbj1*rtVFR5K$Fp2emm$JA#)`)Y2}{pH313oKdeo$9+} zvu~{uC*NuMnIEN=$n7T65_iRqmvruLXsvp&UrVMTq41xnYlNPGAnmb`=A5ZtIv8UCK`y>6YKFZW{@OpO$m1vIWOFpTMiV|2STbi? zcav+OO)oQK_Jdc(^X?oTf2jdi^Gt(h|wtKO(d!>S!$JdF`My`ip! zsF<8-lNofO&*3kETG`HGxKe(+K*E?J6c=vFnF}<AQulm1XzzA52VIYj>`qG5Dy{K!+JoDYvLI-LK%E^r%l9P1oII-7F9~(7o^N)MU}S zmOisZ#}khbryi1mMuoz}%pfPPM>09}zfL82$K|!sV9;PKUrT#^O}0zD@uW(P6*P}) zX*$Cl{&$=E_SP51#V!#7?&2>$Bd_!2c72_oL@7PS@o8E9esR>xSjuE6z&K=QLLT-k z_D*fRoAi;y$;q6xNp(5WVd|7TrzIJMe1+TTf0?PqM!8Mv#bCX#p{w`3RmNO3VjGF! z*i)rVp%2GS*0jc1ylbfoJ#Ah?E>)?ynw37e^qbt1!ob2s@7CSVC+zf-9S3?! zd%b&!p2keWUYgnEBeC=9oOc8EI+iA6y!<_-*5PY`CRZI-j=FpPg4I%rxu9o|=AbgA z6LfU-ZyhV?Z@FgZIrTl+UuDcB@zr1Rz4HcJ^>g4#iBD--f0;^U6l^u>e0ChWW9x8J4&tLan>#4 zNW$1Me>tdhxnykSa}kanZ0uy;zOOWaq89HMVFF>Ym)NpIu2;kUctB1)UXFI$+$Uv{ z>H5X+!Q6R6Cyk2NT@Ifwmset&wqsl&9MQ#!_&L!BTh@|d1l>7uh@a1VIb!;hmksgr zVynHE7sxF?}RMhyH4c%d0 zzBzH1v48Dw8%<1O%-NJb&NO|*OW?kII)XGA#Uz4vDR^Lff!B_l(aiH-ePO5^3#IgSl5Bx``eR34Q3D(Ei-ET9*`;}P z1%9=}(u4dgaIT7%e?L=YRfu&%MOF34gIh{+rQ#QSR3WJ)xaQ||=l{dyCV(J1s0OWk z-0Wr*=%4U2&N=8xjA@KT2&MV}jg^<_#hM!x?AIUqg7yNq89ZIwaN{ZH0___LMVmVc z0f}(puCN}qBU%qK=D=myw<7t4!Kp11NzmoN5%7O+3JptYDpks@S}{i=O$g?gKXym};s$?unZ#WQ>`Q2=Jtre#6v z8*K`tr-`FYlw4?|o@sf9=P3!&&CBKaTw{{zp+7>&o!lltWbGDuw?M^Nq#l5wB{=l>9Tjc^rxcT#~Bcf z-JjjpDHLrUL>o_W+O!J=eK_%^94O6i zON7{0;po|19Rlc?{@Dk9u z$15YtoI>1qP8KFAvP0tIMO}i=ck{|T#{+X02ja37!4_jDO+Ryuj&&3qVDG1rLjKX` zL^&m}#;+%S6m?ApxM5vp2Pox21|c<|1vDT79z?(DlA#^hpqHiy^8eTPT@k?73{GS; z&BkrxnZ!g~beSKB)%9|HCmI7JHi1b5zLEZdx-csixYO!>s>Pq1^+=rRf^b-TE8;ft zB8AH#!yk;=f4!|(IO@WB2@naaONZ3?3m#zRa3?{VxpW$;D2YbEc<@Z@zeue`NPT<= ztvaq+oYs6;+6pHh7=z&e-_G+vgfnxKNu~nW|EG%(vF2-g6`T`U8Hqgo;2{jXz+qp! z=SG24Foh%d#Fwh_8*Y6wYv2c*`QDnmVhfR*7PTIL5g!>5|}&v@VfF;@wsZ^ikuM8-3=<$@t*E*y2H_U%3)^yiV0!RNd>utq8to#!SeyqIS{<|#nK)je{&F8$Nm`I#utH9i|Iy96^%^Wkxo^6PlphS{46-v>P!S` z-7d2Gr%Qq5(i>_#y~F*k1El;uUR4)L1>*r6LCQV?4JyX6`31rO57%5YzKRF1CfC z91kKr&0cxRufk11z@Gl*bEwor@#Z^a!dVX-L=xP4LiV81PRRX(*J_4p1l~!g9jDF_ zuTG&Y{Zu;$jLi{*JwnKrA)i}0K4HRFCL>Hd+$b4W+>w%i>WTFccnRvEwF+Wd0BCNw zc)VwbcdL;`BxWw3Ao%#}s=A`bXaiCmFTAMADB`SNG1dDY+i8Z5$MNU1&ZjeOR`(!x zmaMLdCAzU6Hr^}0^quOPyy(A>^I1sm-S<-|_f-m_%oUmQoSxyfcK;(p6dokiriG2; z1*&2Q=yNegM&;)T&J^ZwQyuEWLLpGkhZi!q*^l!h!RWCL;-^!nct5szAF6SM2?*Vb z7Oz%$(GFP{fCn)2$KO9ewVA%Ar~oeT-_r7VD)(hWB7=EkE zTH;d|#RzObz~BvFaQplh_dEJ93Qc6V^w?9!RM-Xr{>H(@ zd){L2i3kGP|7I?yH-5ma|KGJ=^x%sBQO*)fb!;gXJ{I}`@X+4GJ`|058%YPrfx2(zq8hARlY6%mx#GbEIp`$~1^jALkGqq~3r!ha4B7FHk z_0SIFXH$Amd@ml0+IoE{qGmcc|7WEg;T?TTaUuLy+i6vMTxin4!d~2sQqXx0L{5-J!bv3U0km#M&bnV@4KY8E2M=HbrZRS2b z0R+1MK`-Z#9!^%mq5`F;_py@JNcy_>k=W-mt(J)^nN2Uwn`OAzOg-TQs`d8P?Ysj| zeFInTlV2W&N5gF@z4#g{cgq?pSKi~SX4Q$Fu(l_wmdh*iFTUR;eux?99v)^rX#9Gr zXr6{Wu_Zf?6AUe{14Dzyx9>alEW5}uJ6P4P#^k>*E!(rxO?13lZ8OtLK$wc)ckR1m zkk?2McHP0CvZQQw9CM-CJ%R_sN0{-w4gEW#I{wrYzZ96|0v&(Vw$OuKXP4g&5GsOw zoN!Xx!i!U)*K=Rlyu_5ZKbh4We^+mb^q{?eywk$z;mBDg&S3utuJTuN>OVmC1Bf@S zThr$=_Glp4L`~&&U8tvdP5h9T`*sgyznF?W6lR{&31txxvAxK@5%6@^d3~+oDFvBF z0E=H7+_qjnGtxG7FU0Q~hb3qynm=6eNN+CR?O_?0U=KnK8e`K+<&ZbW&=x#m;-|Rd zZKCPEoR3z_Ky_vPWF4Y4eP3hq&^>Zd%+!7SLumCkB5Di84|yHqS~7_!KGo6r4Bktg z2;5D+)@qsZ`0k;_&z~_1c4U+Fet4W#sX!(MLA2a?Q-y3UT%IQ1Ai5ha5G2F_y?Ly4aGTRz}6hACvRyIH1?eq z&urm=(n^jUE$Fi>{((Z2c!=cu%f4MPSvDq={;jqR%ZB?} zG=p9j6@@vcjq@J7=)n+_Fo3tRImTSX760_mxcM^nY{8yZXygT_nR|BEw%V(XD&4kf zWXIC))-Ju8yvB?QJWX-Mb(%~D`>7@_FbBkxxsM)tB)2VB_(>ztfA*;ULK?N54DRA|uZ?3Awf_p3e`ImcbHQ+s4ot;Tk04I+-%>8hZsw{pHL8+*UR5U=WPsN~(yW#KoV zJf*`{#@_FT$qNxTPj--N>@s7=F7Y3MXV^h_+$QU=ve@$LrtiQ-Ob);ZNC&ImDqZNW zbzicO?C@|S$=NmLlAU(W)G3#{uVNGN%o$ll8R_KP{aovR94`lRq@h@)tNjNk@aFw| z{N@Snd#kTdWW4N4qAxX!!0>2m{Kxr*x(g}AF_SsFrNyJ=r7NSb<1^ zHa6l#NG@W1+;*vuXP)duKTh~jm^HiI1@A`!bU<^wO!&(gQ||MRV?g}xLxN|gZ;}|N zp(>%?foD`aTBhS5cenpBSe '您的兑换已成功完成!', 'unknown_error' => '发生未知错误', 'rate_fetch_failed' => '获取汇率失败(服务商问题)', + 'matching_account' => '正在匹配充值账户', + 'matching_desc' => '系统正在为您匹配最合适的充值账户,请稍后...', + 'security_instructions' => '安全说明', + 'security_tip_1' => '请在倒计时结束前完成充值', + 'security_tip_2' => '转账时请务必备注您的用户ID', + 'security_tip_3' => '如有任何疑问请及时联系客服', + 'safe_payment' => '安全支付', + 'instant_confirmation' => '即时确认', + 'remaining_time' => '剩余时间', + 'account_matched' => '已成功匹配收款账户', + 'account_matched_desc' => '请按照以下信息完成转账汇款。', + 'bank_name' => '银行/支付方式', + 'payee_name' => '收款人姓名', + 'account_number' => '收款账号', + 'transfer_note' => '转账备注', + 'copy_info' => '复制', + 'transfer_steps_title' => '转账步骤说明', + 'step_1' => '打开您的银行 APP 或支付应用', + 'step_2' => '按照匹配金额准确转账至上方账户', + 'step_3' => '务必填写转账备注(如有)并保留凭证', + 'step_4' => '转账完成后在聊天框告知客服或等待系统同步', + 'recharge_success_title' => '申请已提交', + 'recharge_success_text' => '您的充值申请已收到,请等待审核通过。', ], 'en' => [ 'home' => 'Home', @@ -1035,6 +1058,29 @@ $translations = [ 'swap_success_desc' => 'Your exchange has been completed successfully!', 'unknown_error' => 'Unknown error occurred', 'rate_fetch_failed' => 'Failed to fetch exchange rate (Provider issue)', + 'matching_account' => 'Matching Account', + 'matching_desc' => 'System is matching the most suitable recharge account for you, please wait...', + 'security_instructions' => 'Security Instructions', + 'security_tip_1' => 'Please complete the recharge before the countdown ends', + 'security_tip_2' => 'Be sure to note your User ID when transferring', + 'security_tip_3' => 'Contact customer service if you have any questions', + 'safe_payment' => 'Safe Payment', + 'instant_confirmation' => 'Instant Confirmation', + 'remaining_time' => 'Remaining Time', + 'account_matched' => 'Account Matched Successfully', + 'account_matched_desc' => 'Please complete the transfer according to the following info.', + 'bank_name' => 'Bank Name', + 'payee_name' => 'Payee Name', + 'account_number' => 'Account Number', + 'transfer_note' => 'Transfer Note', + 'copy_info' => 'Copy', + 'transfer_steps_title' => 'Transfer Steps', + 'step_1' => 'Open your banking app or wallet', + 'step_2' => 'Transfer exact amount to the matched account', + 'step_3' => 'Keep your transfer receipt for verification', + 'step_4' => 'Click "I have paid" in chat or wait for system sync', + 'recharge_success_title' => 'Request Submitted', + 'recharge_success_text' => 'Your recharge request has been received. Please wait for approval.', ], ]; diff --git a/recharge.php b/recharge.php index d4870f0..ce7a838 100644 --- a/recharge.php +++ b/recharge.php @@ -190,6 +190,174 @@ $bep20_addr = $settings['usdt_bep20_address'] ?? '0x742d35Cc6634C0532925a3b844Bc } + + + + +