From 4d52d3b2d2aacc4e247eedda7eaaca6b64219fdc Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Thu, 4 Sep 2025 14:07:46 +0000 Subject: [PATCH] Adjust layout to place quick create button to the left of advertisements Refactor CalendarGrid component to reposition the Quick Create Button next to advertisements, enhancing usability. Replit-Commit-Author: Agent Replit-Commit-Session-Id: fba33a9c-2c78-4001-992e-48eb46f716ef Replit-Commit-Checkpoint-Type: full_checkpoint --- attached_assets/image_1756994806477.png | Bin 0 -> 9634 bytes .../targeted_element_1756994827180.png | Bin 0 -> 2179 bytes client/src/components/CalendarGrid.tsx | 58 ++++++++++++------ 3 files changed, 38 insertions(+), 20 deletions(-) create mode 100644 attached_assets/image_1756994806477.png create mode 100644 attached_assets/targeted_element_1756994827180.png diff --git a/attached_assets/image_1756994806477.png b/attached_assets/image_1756994806477.png new file mode 100644 index 0000000000000000000000000000000000000000..15569d995dfc2284321c5c471faeb80fc3ac7e6d GIT binary patch literal 9634 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 literal 0 HcmV?d00001 diff --git a/attached_assets/targeted_element_1756994827180.png b/attached_assets/targeted_element_1756994827180.png new file mode 100644 index 0000000000000000000000000000000000000000..77e589f4955f38d9f04fbfdd9f68d93f5ed70aa3 GIT binary patch literal 2179 zcmW-j2T;>X6Tm}=A)$Aq2MOQf@w66vX=TCv{xZ&;_f1qFe?cDDn%upzdHAhu zXYt?dCw)Jo`y$@l(j!d_Dzgdi3V&4X_lbYg-=@zTzMBET#xqu95-8=9HlgJ&_`D7H zG9D}_g<5JJMvt5EBA9s7guwink&f_VLogBrn6e-P*RpfViU9>l-~sbKc922WC z|25KihJu9v*)R@9uM+?tHyAQSl0UP`!5dFz)M;`Tlu~)P1I05>Z|QVjmF zy||FwA)eNoe<_3zk{VSyJ8oS?>BfPP+y+3_J&GW16_+o9zwKL;*!5zzWdp-)%6WD+ zP8*gl9i@C&yFNgT+b9^9QHzotEtG`-VbO|}bXm(!b~+QT>W_ZW`um#>l&|M<#pbUp zt*+{Cnyo?g8VkH>ffAx6zbnYCj;%9c(CXvA^h#;FZ{P zqYz%ntx^wC!c;xKIexeKnscmo(VOsvPl6JRqkqXbzFdDpKHStm++#C7j6LvPg{}8^ zR!L@Udz%}Llq325qkvzf+#|tU@i7(m|7i}ExD(r3-R3TAT!%lcKw3j!^kw=kHa|bsc7<1*k{HPPz)$N~E|10(y6X;e;&}W)1~y#VWM3Axg8!051>QA93OX&xUIzcYwUu;a+)2&gU(8x@b`a_hRT~pejSw! z@-^6Mdg$+{gFfeJ9S#Xul+4qXJD!U0%XLhze``J2bzyMEl`}v$2o+0bN%+m-G8QsF z+2$H)8q-)1M0-qw>c5ld$L)EIjw9B#MvQw~7vkj8I^O5Q_vIZQJ3*4@*Q_CS46%=OJoY&K zAl2P6!9}P43-8M%&W&9i+D6cYdCAU)#R*FWKgzzbD2~$Bf9{vZ-SVp$Q`GY2((8ev-PhCP4pvG4EhK(vDlN~ymv zab3C)X*3+}CDf{N_?f5ne7B%|Q}C(8O^$yQX3NW^IdbR?JBjm&t}#8%cn$qqBU}2` zgsw4{?0j;7k@ktST*dHCHyNb}8}2h#OkFKNhG-?28=>&)$(DADQ?@XC6m1tL;aOCo zewiroSEa`Bo@sl{Gnoa7QgRvEqG5jZ?g6f4odeW?1yjvzEz1Y=1y;f;q$&c0D|cr& z+~e}I3Rr226e-oGl6%%oY~R+TbuO}Z)C|XVxNSRIGUs{L*XVZ}gIf?5`;%g9O(w*v zMd{|?9o)7d-w>a6q%xlTmO_oTFvD{?3ejd`Ws^&*6PrgwyVl@!*xyoS1A2P?PsSX` z8zO7eFuP)N2+?qHK+RLFjlz;7qjAZYccCK#_4Py{ZNFB1M72|;mB=a^epqJYRh`^| zc2LktG2NOU-uY60{AgedN8VG?@}9~LaoV9Oc~;Ff%P7FEgyBi*pS&82KHgurARrQy zlLQ;M^m!rllE_h-=(Lebqqk|%elcV@5olVaJgK9Su^(|-TJSLHTlk5m#R4lQ&uzpZ zhKN~QR?F6N-xn>4iL+IY5fC{!B=UmXegY)1dO?#$a+2sEQcj#8kIDJtig zna_H~>nX9R5^@rBlC=A3SvMei@=DcYf#iwrxj=thPhK7=baaJO^?RZ|4qbbq+vI0H z*IrtjG5ws~_s5L_1lko|3^WaiYPjjGq~k#uuPH)STcefkED z{@yUwuGnAaQhpq{#NKi|TELL*dNOeo?*3UIo4rs=xRkOOtSQZs69HkAYFaqWhc9xm z@0w9K)U;%9$4f?w>koH$fuH^!igfl5clZI4Z8jl&0IH$DmNEdzW+*dq01bbO zghBy%4~@Y6Dhol5ph-mx09rT!Pw>!)9R3GuI3PUPv%EpiEZQ7^k2wQAts;jh40b7^ z;s>rJ7*%92+_*17rnp#dS`nlGZZh$9dIQkA@%LaV!-fKz#1EA7J75tr5KVo!LmDWB yhR!gu$1x}>0sF-U0-c@?5D_1MQ3A@CA(%n*qn~{|j@EC06A;b_k7+~`68{51B*h^B literal 0 HcmV?d00001 diff --git a/client/src/components/CalendarGrid.tsx b/client/src/components/CalendarGrid.tsx index 4627670..69f8005 100644 --- a/client/src/components/CalendarGrid.tsx +++ b/client/src/components/CalendarGrid.tsx @@ -539,16 +539,32 @@ export default function CalendarGrid({ {/* Publicities et Quick Create Button ensemble */} {isCurrentMonth && (
- {/* Publicities avec design épuré */} + {/* Publicities avec Quick Create Button à gauche */} {dayPublicities.length > 0 && ( <> {dayPublicities.slice(0, 2).map((pub, idx) => ( -
pg.group?.name).join(', ')}` : ''}`} - > - {pub.pubNumber} +
+ {/* Quick Create Button à gauche de la première publicité */} + {idx === 0 && ( +
+ +
+ )} +
pg.group?.name).join(', ')}` : ''}`} + > + {pub.pubNumber} +
))} {dayPublicities.length > 2 && ( @@ -559,19 +575,21 @@ export default function CalendarGrid({ )} - {/* Quick Create Button à côté des publicités */} -
- -
+ {/* Quick Create Button quand pas de publicité */} + {dayPublicities.length === 0 && ( +
+ +
+ )}
)}