From e9ba9e2700548f94fe981e14e81a89f47a0bea2a Mon Sep 17 00:00:00 2001 From: echo Date: Mon, 24 Nov 2025 18:36:04 +0100 Subject: [PATCH] recommendatio edit added --- apps/admin/data/fitai.db | Bin 81920 -> 94208 bytes apps/admin/src/app/recommendations/page.tsx | 41 +++++++++++++ apps/admin/src/components/ui/Sidebar.tsx | 63 ++++++++++++++++---- 3 files changed, 91 insertions(+), 13 deletions(-) diff --git a/apps/admin/data/fitai.db b/apps/admin/data/fitai.db index 4b2a8ee591ea2e2ebd1699ee4bbbce5227051cf1..69cf70713423965b3547bf78c9508cb1484b63fe 100644 GIT binary patch delta 7336 zcmb7IU2GiJb>1~aQKG~h#c?gkvcyYM5_c)?a(78Ce>WDB1>Tzyd*1Ke+8flD2{S(7%TUE{qmw(KJ9% zpf7ENe&^2qk&+A*f+%rj?!D)nd(QWL=Ultif9;?9fBiuJM~OsY@7LJV$&bGE;`_sU zwi!RcgT!9re~kY&erEh+V`R_oKeF+`Q~9BBJbrvTe*8i|e(c}$yrZ9`yxtZyFcAAU1?A+9hnYF}hajrO3F3sml z1Ny^qrBa--=Cb+9Tq!$UnliINHh7pBGu-<@iohx^+i{!rJ)eE0=OCHE1M^J4P|}S1D`g z=R@xdP452wZocc(u0I_7(ctQ!0iXY4XH%qh3=c0Zem1ccToFUz9Nmnx5xkVe;dE4J@4d`{r!Er5`DYyb+WH?$L}{TojZ5n^<_2o z8}7ly#d8mnUGH9LA z_{p_90jqE?o=HV zS40pt9Kja3XEAPBz6b*P)DBtQm)s2PRpB%k_JTQ4RbUS<$1X~XHzwGcz>$u_DylI# zJmAX+rwDcDRd#CG<#=w^xK|ZeYFR9*!!cI2s|-g(P8j6aN#TgH&qG1R`z(k|6Q_${ zf{`(nx_W(Yv)o|PGtYZkV95thWNe|9f5i-Q79ED6& zDnbVa@kM0S!fS^Y;z0Bq?&4?{YqU{SpIZ?kf)f z6SN^aY5QhmhYN#Pz-SfDci4p}sAVtJgYgA6g)|Ehy9%4j7K-GH2yrda3pz_q*0}Az zJ+`+w)BBpGBe=;ad2An7;4_YtM5H|vQL8Y7#}Zbiv&#jCdn@hpCRk0zH%tqs^4U@z zc9_z$y2qZdeT$uv)%F^u_KZEYlhsjXfo%y@xG|rsso^wxBwbUd(oFg3k=aacaBzJ5 zIkzr-SQ4^dln6gX|2~PRuRI84o!RQc^!{RwUGODs51U*nCDV^g8|jSf<*U-RkPI(H zzAcc~OSX&0>UbvC#D$`CkkZJ}-T+OKi!8KVqzS@HZ^gRsO&g`dx|v3)uU~p%J!BQJ z#!$1t!2@n!H569UHvKsj? zwJ@8nw#>o78mxF76pc5`6_y>jokK%mqy9Cr$g(W~xHwHCsWwDsXb>SkfqfPep75&; zoh)agf@jvSV{u_B&o0DqIqlnygYQn(Y;y$wM&YB_fze^mvikC|eV+}b%R@;xXhvq_ z!rMUo;MnM}4#Qc&J%Z-0Sq@MJ^<7c36C=&3p0mz?MzSZQP3JvRt+I4+vr|+e0S|3~ z<>a6n1tvleM0Lt??ZYYCgF~&WZMkrQuVBMv?zjNPmf<=c%b{p;L=R2@v!!EGH1++_ z?q7^-PjWnJC4?y@_K7Vz?}{qVPSM4YEv9Y3`OZCCEY?r!%;bJq)*2R(MxYHmqkjRc zP%WPFN031bZ0P8y&atWk@St2Pg6l#AGNYc(J^5^oQR-flAu{wNcR(2Q%~Bn4UAGZ@ zp>wz}hkVYmVjlmbFA|>;4SEcesXtQRePgs)i$HO}s5n8Y#Gkp$1F)jA2f|K*kkx@* zJy=X(hbwT`3w`P6O;LeTGjcn*WnH5vpn{-79e(R@^I3tytsudvii0%{;PGIIWg{~J zRt9ZYL}HpL>%OQ6UjR%IVi!qEiA$6i*skqxpGuGTQ}gXAcOr_6$W?O_@y=!|aVdF1 zS&1?^);tMRM``+GIB`2|*U}oks1j4d7zT5Q0T4i1%b6>|Pk_aMjsjnUhA14ULsYu3 zHtW^G{KE8XZf1UFi^MJF7Yf^<$LC5{w3dox+3iH%ZOF3geWl-&+hbYQ_}cUD7zZHA zryim^Xv?y(eZ6u3Y9VHPVU4JxuZ|A1?nyOA_ck9!WFdXvFNp^bas_yyD|$_g^-2?t z@I;=4y2O>~5{8swu{raFq19j+nP)J)}`5wpd%h8Qf`YVGT5s^a9{MP z!qnd!-PSy>YZsuCWt;beuBo7i$!N_Ws1#FU5Nt-->X$7EZHH(9JX88W3)0SkbRkQ- z%B-UW?$u_M8j0tQ?zxXP%XMUx7H4evY6LEQ$Q9hFurF~W;`hgflR5R{v0=4*V{fdb zCemlNUdse1fm=TG1!QjPswN1IE9y^f9D^kO_{J~c)=o)p49y6Xr3SD-;FPjxK+?s4 z<^Z=S4Mb2Eq^eL_Yc(*dzCQ#s$6}5UgpgMwlJV%VYUoy~NSrurp^SPY(J25GBU#DP z>g$w+g6FkK166Fl?oA*Ye9yo`PKltc2iy&swud z-xR6IK-IVO6o3VNS>&&vm8EWj)D4}b=5A&7#7DRs*N0OAp=!4d!JpS}9i1c#Y8XI7 zt$=+AdxG#+pvj8l2E#Y6W~DWz%jX++Ihrl@*ulDJiCfwndXz?6aJ4Qi9LbOrQ*Ikh69PV9sr zsIn@NLrPkceve4OW5*+iHo@$1YM!MEg6yl(NB{-tt)QG*NPZrER?s5i2}vBWPVkPI z013y4@CUDXn5zqq`s&S`U7TJh&gZ7`b618i+DrCj5`7u4@-T)a7Y8&ef8_TdZFlQi=~*>K4<0)WTU*M$6@!37&4;p2RDd+Hh z_2%S|`qAj_Gn$OF-YXMGxbaX$hZ~Uq4~f-YLI$AVJ~grG83V)(HUE*TN%!AJ530AW z4{W1xjJk9E08s70vky<=G!&nYR(37EV9k}_;`_6u9@1ctpyd-T3k@1F1mfWyk|KJc zxx`FoFwq%^V7fyhAr{7$x$lB0Sh~ZG#6{|NUOV2@qWiM+S12lJ^ff(`h}QI=J&D*l zr_c(iUC3oUv{*xrOLCpFI!6%_)0sdI$bASODy>FGqQ)|LICiXOW}(wEo@&57wdd%t z`rOg|%@$t7;}4qH=#GZU11)QpEITAk^Ohc0*ahe`>egxe(rK@?9D~oTi2_;_C=R)X z8o-#U`y6H0M8h7Sg~ECFPDfb!oV4r;;ITn0r7H)`w@S*1zDrrt{ZUi#Tb>B$9Og0lckx)W4?{QAhHHuzDJVJnKMr@Lu_#h!VT zc3;CJi4ZN>IvOfQJz7fI7&oGBeD&y~m&F+FhGSF{M=o1ZfA-apgQQxi4qZ&s^st2v z(pQPmgF5uaFq$LXTF0PFlNUX~X^qre@O!m8Gi)8$67f04o{MLcx<87$RFntxs1T=M z8N^5TvE3+RMssLpDNdgjeQfOpdx#;PT%a$&z*pUU%sD-;$vdi z8344$J|LWzUxutetZI_x-xwN%K|KShQ#gv29ItdS7h`1=OCFkU0wUuR&!{JEj;d#F zP9!%go1FT~V`EFPXn`aI&IE1IqIc|7Dq5mwCJ7@`AY1edMqj^r@zxjSVr4>NhxA>` z)s94=0Yh7(tV)wxlH8m|Z>;|I)-m<-i5-1VA8KcI(TGj%$O`qv+xyge*&XVSvWJpc z^}}rXY%A{V4>_m=BODeAe!q#wg9aWXB_O&m?Eu?ssu`M;bSDv*Yg1ygYJ?6R4TwOd zUEmnPAin67P^f4UKV3v%L3ik`g9`CL^C_evuDnU=ysMSsl3LSJ5)5T~sOfWPkX#zs dw^T=0bZk*2pQ1s62Z)gQ9Sc*%T%lCD@_!bwj9LHy delta 320 zcmZp8z}nEjIzgKCI0FNN$V3Hu#^W0kmdJB4^8W@3FmUq!-mECFj%o8AB?I2+wfcNjek9VEdLFlB47T^vG(c$lc&Dp-#ppB*nq>5fvKMHIHToez6MQ3 zK?a6KZWf+UUj}7;1_o(c28PLr_9~OJ8f~UOjAsc4`JH@V!F2ve{$~DCe(%j97c{|Aw)c4_N8Dc{$II8j!2g8*IR7gCUj739 zV16@xNxnaP_xTR-E#>O~+LXpOIr|;&=Be-U4S87ja~b&W@Negz#GkuaFd&wH`aeBJ Lp6!+TjO_vdT>xQR diff --git a/apps/admin/src/app/recommendations/page.tsx b/apps/admin/src/app/recommendations/page.tsx index d8eea63..4cf3c91 100644 --- a/apps/admin/src/app/recommendations/page.tsx +++ b/apps/admin/src/app/recommendations/page.tsx @@ -98,6 +98,41 @@ export default function RecommendationsPage() { } }; + const handleEdit = async (rec: Recommendation) => { + const newContent = prompt("Edit Advice:", rec.content); + const newActivityPlan = prompt("Edit Activity Plan:", rec.activityPlan); + const newDietPlan = prompt("Edit Diet Plan:", rec.dietPlan); + + if (newContent === null || newActivityPlan === null || newDietPlan === null) { + // User cancelled one of the prompts + return; + } + + try { + const res = await fetch("/api/recommendations", { + method: "PUT", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ + id: rec.id, + content: newContent, + activityPlan: newActivityPlan, + dietPlan: newDietPlan, + }), + }); + + if (!res.ok) { + const errorData = await res.json(); + alert(`Failed to update recommendation: ${errorData.error || 'Unknown error'}`); + } else { + alert("Recommendation updated successfully!"); + fetchData(); // Refresh data + } + } catch (error) { + console.error("Error updating recommendation:", error); + alert("Failed to update recommendation."); + } + }; + if (loading) { return (
@@ -171,6 +206,12 @@ export default function RecommendationsPage() {
+