From b40b19b5967d5bdf65758078ef8574dabdc4191f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roland=20Z=C3=BCger?= Date: Mon, 6 Oct 2025 22:06:16 +0200 Subject: [PATCH 1/2] Add `` component - Renders an icon depending on the aircraft category (and MTOW) - Types: plane, jet (plane > 2550kg), helicopter, glider --- .../AircraftTypeIcon/img/glider.png | Bin 0 -> 2452 bytes .../AircraftTypeIcon/img/helicopter.png | Bin 0 -> 2798 bytes src/components/AircraftTypeIcon/img/jet.png | Bin 0 -> 2360 bytes src/components/AircraftTypeIcon/img/plane.png | Bin 0 -> 2792 bytes src/components/AircraftTypeIcon/index.js | 51 ++++++++++++++++++ src/util/aircraftCategories.js | 24 ++++++--- 6 files changed, 69 insertions(+), 6 deletions(-) create mode 100644 src/components/AircraftTypeIcon/img/glider.png create mode 100644 src/components/AircraftTypeIcon/img/helicopter.png create mode 100644 src/components/AircraftTypeIcon/img/jet.png create mode 100644 src/components/AircraftTypeIcon/img/plane.png create mode 100644 src/components/AircraftTypeIcon/index.js diff --git a/src/components/AircraftTypeIcon/img/glider.png b/src/components/AircraftTypeIcon/img/glider.png new file mode 100644 index 0000000000000000000000000000000000000000..f69b4d2504ce8816d6ffc7fb36021470976f1d2a GIT binary patch literal 2452 zcmZ`*c|6ox8$Z7>#-L#a(byV8le&z3ySe;KW4jC?*)`H)nQN(N5yph38&Sd-!yW31 zOSu%vQd}bCMohMs?4eRo)(P+Q|NEZjbDnda@Ao;|bC%D!ddS5dBc&__0KhmpP~8E5 zGDYLiK`UNjyZ9Waw z&4hxvuP7`b`wE)?J#S1ReEnZpOEnc(=KYE}(G z+sk_D>8Nd6HNWOp@lBX*lWK%(rUi>I9%nchVp_0EkFMO2YFPJs&S-<8t1X zf4~II+_vrU62h5Kg6l)WMgQvhgag{W87xi=)-@^6i{8nE*$; zE(RN=|74*KzRpQ+uQ#yG@6VlIYdhMEuMBNlgph1(bQ<7>xO7$_dTu3)7Ge0tYooEA zZC+un8W19Ze9n&8Z|&!bi!M%1vgj80WvbePbbGdWA&lBcEeuz}y+l!ZmvPPba#45U z&IIKTmu%*5PeJJdtx0b&QYMf4zWT=O`wjGXg}``nP>jpQx{1L>7oB=88O7Ki;0JN3 z0x^CNS}q0(QJ_%cfyrqMRX(0<*_{pe79vuLj>s!Z3N%yaM^KSGPp+LnhK_h`IV=6z z=_OFsAmL(=9GDcryPMOpjEj254y6V_ruA62qs^SgMqoB^JV8@tZp684X>{$$}HiMH2Rfxxp9m zy@e*s=Rp>6FV=${dM9-gGG$|N#8O9XU6|o5I!iEfu$0yI1X2mwARW(=!r373AB^6b zb9wDv6s*v&To~@Y(Hd_fZ+vr~^7m-!rPCZ_%^~%+a`u{2fH@St2UgY5D1OZNbb|VQ zv+MIV9%nC;Wo42aAEEV~|9D@5dc{Ch*vj2g3ENJVo4s9169ya6M-zD=s_Vw*Xc3pL zvDZcokNef-R@M6z8Wz~K*+2WmmAS?%4(%@4^{QuJNp<(87n383Vd})%p@_&2(s8|} z=`8XuxB8eJ9R`0@nz~bYbpkE-B5N~NLkTlB?fqFbTxH~T94>FPe|%~LH#p;}NxFGa z&9?ohK@a8;-q<7yy)Ia?pi*96^ zS9kEprIqM~M==JYwB}oJ2*Y{&jAz%mE9ECi&9pe-feiL)PLtG?I{6ScTdwjj1C6T* zNGJ%j-`u@m7`FLsr;>!Sziv%@1Rhn^*N`!AZY$9zbn}j!Y2ph$%<1Oo1xtmO)Uw|= zB}CSh3ROvkKUk$a=5pH_L>9EM?)9G{4W%E8f+duCM%da%i?yHOw1mB#LW#w3R|}DWu{0p z1u1NMJ5(laT#*(vKoS>RESMlT8$d}LcBhD z$AviQG4j-Iv6dB+KN-B!Un!|;)iaVNk*BR*&)M{2Brf`9P8;l@&|Er(odT~9GB7g7 zVywl#3U1~;q{rPJgLUC2MBL&m_mrTKeOj_4V#Yywyh56iC&a!fpH439MBZ9*SdSVzLIr3(3$x&1!a?E=jSj9MK4ADna=s7nX+JnkM&>)ZhYTBU0>^>ynGv}X}aCr zCAa^K{tbAPd@QDEB1Bi!%2$y&ThLLb_n#N*(eDmHg5a$7M3bJU%U?C0Zv7Jkv|qNQ zLWrzrNaY0={&=c-Vrr!5`WFBpMji}~cXO;byyDACcV&gUH40 zUeP0A#|xdDn372Scsc^AM$2Le%`VQnwW;(E^R0!?kO+pFx`>FC!U%WDqtWRFRtcL* zaf*DJSJk$eIK?!rO@CAnG)9D(L;tkC-J=rdnzG(H_01GpughwA>BE8f6JUO2tzku< zgvF}6Zske8WJ@BE&+iLgjm~pmW&yW}2{Yk?E{16J=bsqp^MT4iPxt(oDnKAPZ+hkQ zm2T^$1*hfaHzub@B6++d0Hx*;+c)9}Fu)Ree!rGfay8ysPTa0&jqY#djFU&}uQ?76 zMB*(kOb?_;z*FSl?aJ!qH?;~evB(`i4b`Es^!wPVQ#b;_;iD&5`AR0rObWwQC33`> g0UY!H{n{UcdcVzqS5}t_L0Duqs#p0OV+nRCfSC zq)OHTP+CI0-NnI@2@&G%V2gOywd=ZsLDOwqYyjZdE!>K)l!S**JG#3708<+PSg`=G zED^D003g&D0A_svfRqIQ#EaQnH?l+_?dRk`1=cq@r@k;lB9Xc1csv9Ea0(j(0o>14 zk_a&jnu|T=3sxG3F_im#FbV*$CN!$e;fRrMV?F1+_{!2B!qrDLh?3hE=%Be7hO= z-sOj_%fVVJ&Z!o^>&GL2f3|AYV-gmCVPhOKDj~|h7ueO$ov{WOFaT2k2tIW6iwG6i zTU!AP>*CZxt^MC?U-6v-n(Z)oI7F5nicH9e7_hye7N7#AJ`1Wo>e&?ScKKtXyL!j>A@EJ$m^@VYhuE3ibejs4_6f-ZKQDVSh1nwqRQwEI1 zbG8md54-u8vMx|D?h~AyWY&lqjg)ixVnlm6bPbeedT zW*xk;O@6uPb`n{)MC-j`!-Cf}1aj8#CF*(D-|}iVE$csv%_C*_gO)4GLuqrU);6LV zZ~iAfW2LO}(*A>@#4r3)EKnZd_bnxOuv|q=|B+=3ZTOTt1UI*gc&(}6lV2B>3A>70 zLXMW6+%z$;_VeVnj?d-zR?RJHnO5O^#q1VtWk4RvtuAT*Vb_nf*?lFwI+>bgjgeEm z%^D_0QW@su9kQw7jJnO50u$aNWofKTx`#r~C4+~E*fQQXfiSA*XEmRhd}EHny7E=~ zor$d38)g*l6Q4HHyZWz^W@!SawaMDRBDGi+nm}|f7?v(sIbDXS z?EwX7aH!@&;Tw@bsb0XTw>6b@$;8>I!v0a2g<|tbB$|={LNl$0>|pA7b)b*JS!=F7 zj0pT%7I#z&ngzuNN=!y z^^rU3gF#3oa*@}^Mr5kbn0GyrMR6h3goCa2+q!9Wk()I%DX*~Ux#C2R7#-U9Z=&+_ zQCe&QAg>v6e^R;ALC*VQ%{+MP=FRDNjdQt>8-2kj?3;&z^JHVrI`hY{Fwh+&#DXsI zovux2wOvfzsGwU`w}OhE{2^7DA}mg|skKNcTL}?{g{;!qOL|w^Jw1jLmpke&IPy(Z zb-oD0hR?>Erc~xX&9C~=SM{TcYZjhJ%awbfq<4Dk&$uJwBRSWSJP0-lZ6CN(w{s`( zwWA6x1A)mW?ye#4j>zC{^?cP?dTnehS{8l2_q;Z(tDRYjKhsO!9L9U_%P##}gn!?d zWoBr)QTjFJ+I-agk5h4GDYo?$J(0=kb7!Yb8tS#KpIo@_{$gEg$tnHO@s1R3qc?et1{I*(k|cIJw!VyKz|AN=o^p)y|9EX9gXJ52BC37)gl&Ax0fb%4JmWiY;wI z!LXBYk~)(Wyq&JonJ$stm`Bb~ilR272*#3Y=5dWAzG1T2B!N(1VTN}7En^XwVj&Ro;MuVnJ{df(;>F4$Q2}#)4Ic`lKW(bUa{_u(1WEau!AmHXK@* zO;%PEg~~rvktRL(ZkK3;Wo+k6Z8(Kgymi6N=y;+m8|_*0QY~+AHm}aYTN#hN%sd-) zV1H5n(R3p@)NH9jO#J21n_5f1Zl5yxD)@VT|8F8s6SncQvRBVDKK7u>`&{^+J80uM z>)-j)jn;pOuCgrSI<+x_%l{zwXZZ_=0_n~i-v(&?N{`A1{iF(4W z&RTUe&;woXsC6OyaYu&!7U1wz=d*04Kfis?xxv$H|^sRP8_4)#yV{1(ZE;r zdA)BQBzrQ f4=I6<8*M~<%HNKnt-B{|bc3bYAEcJq`mp~4Ysu2y literal 0 HcmV?d00001 diff --git a/src/components/AircraftTypeIcon/img/jet.png b/src/components/AircraftTypeIcon/img/jet.png new file mode 100644 index 0000000000000000000000000000000000000000..ab8f08010ddaa18159bd5e2b913e65ec9630f925 GIT binary patch literal 2360 zcmbVOi96KW8$aK#Va8Y*(zv#1xMNiI`nhQ&hH=f@5OPbhMk`sGu}>OHMV7|6k*$U# z5|Jb^3@vh16uG#gaqat%BwK#d^Lu{(z&Uv5nJSWM~!B!5fiUt74 z(Wn$>03fzl7oeoXqo?z7ka&XV&bC%iUz^?~v4J>EwkHEnbzNrNM^bF#eW}j&07MZ1 zU?l*sDu!4S0E8L=Fy##Z=_UZm!FkV|_KO`-Cl1;iPMgCNj8^Tuo%Wnt3hmM6(yA=dT1)8yQHxlDeTdMRn?WIWlM8! z1ZE=h@yH@w-AfJ8V*@Q#7bDVr`YT}JV8!*u^0mY5D@g!@cbP;fac@t%278VxcP5MV$ ztFM@8YQj6*%m@@f9J+{yF_tVsB%T6_-w)|$G}l3$v0vjC?8#$il-yF66F6=&zXtI!)G@RtPZ-v6PB3F|B;KHT-1b((r|OR zTi)rj=uS^G;l z$|fW(N$e1Bw>PPk7UQRiNCZ%~^;V)KFnJ_-Fc}_fc{|1)X)JZ5hHCPOpQxX+&rZ}! zK(4KaHIn2Bv^nBRwKgazAhFA$g#E~0x|eiZ4fB{_$p!hL_A2e`(d3AXVgF*q0IK0| z)VL1QqCOf|G!;17mt8g4>CMAT7OE}8B!(o9w5XG7a~?hn^wDlT{!InBZ!?T70|hu} z`yu5s1bc!=3XcBUT0%FxKi+8IjGW>$Wh-jJQ{{ln;@?~nt?i2pdAB{Pq)vS6aq~C7 zx~+I{ylRY+Zc$DLDsS`+&&jubZtsqG|DwLkL(~_-JZ6IG~QBHIe0g+^i!R|HIF^j70o2}0j73ajmoX%vKg%M*6X7y;)v5$ ziyYmwlU2h@F0sCZ|o$IGqic?$`ZK=5zUXU9P?ZnYXbxwfrm1&swjR zNp2i*@O=*5ZO`kPXpr60K)nA~Y~OnOKx2I-e{R?aMqN7KGDUM6!_bJWqP zr;QA?1BEW7;nun)b<0~0KWOM}4f|OqD94Utfj##0km`W9KDzw&`IJ#|{G#)yx-1>7 zph3OVT$Ng5)RV_FY;!80*BWJh_RaR^MfZ869P2&>X_@YleC<#Be%CR~B-1Q=?r(D0 z$9kVr!`tvJcNi?aYx%a&?m5>$LZnHX1*syuT3$gUp@5qf=pTG09^@G){+9}g9g6FID zO~WA@-|I*>x9y{iK?C}F_h$#M#3=_{zFl2jB?t`gjFM|or0ZB#);IKSSouc!KX2L$ z<1{H{53glTuE)Qi<2M)GI31zePKL3QGnvHe^F6#LHR~LN)Pcm?Xa!*1nJp$_IXJ=Vs)_!;J3r@uGa7~_&voeGp=q=EesNTY|D)d3O;_&xoEB9|rcFK8 zf0Id%QoL9~N|G~E#C6_1=N{-@}9;?#Bzgu_sjB4YK9`j6EMR{7+rRB7pci;Q_op0CLQfQSJaT!bdJT>+7 z$?D?R)VGLu%edmWJI)IgJ(5oc`ncvW6(f(;(RB zln#^UN;t}-iBvUQ0hu@MecN#R1&73P*gF8XZq}V%5~V_-2EDs%*aQ6{ONJ&F%awo-Qsu|oMmigYzcCF+vY5dsToVRc zYcFjsnm1R5NuhfCHDNd&`(_f`6We9e8vDq(qJ(7D_t@wn#*WMq0m46|8>^f5Rj~IK6hRm8D%V{rA`Uh(O literal 0 HcmV?d00001 diff --git a/src/components/AircraftTypeIcon/img/plane.png b/src/components/AircraftTypeIcon/img/plane.png new file mode 100644 index 0000000000000000000000000000000000000000..b74fa80c3d38ec2dc70b1210ec9d4e1f1a28a9c0 GIT binary patch literal 2792 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 { + let iconName = aircraftCategoryIcon(aircraftCategory) + + if ((!iconName || iconName === 'plane') && mtow > JET_MTOW) { + iconName = 'jet' + } + + if (!iconName) { + iconName = 'plane' + } + + return iconName +} + +export default function AircraftTypeIcon({aircraftCategory, mtow}) { + const iconName = getIconName(aircraftCategory, mtow) + const iconSrc = ICON_MAP[iconName] + return ( + + + + ) +} diff --git a/src/util/aircraftCategories.js b/src/util/aircraftCategories.js index 34a3063d..9dec8a1c 100644 --- a/src/util/aircraftCategories.js +++ b/src/util/aircraftCategories.js @@ -2,10 +2,10 @@ const categories = [ {name: 'Flugzeug', flightTypeAircraftType: 'aircraft'}, {name: 'Eigenbauflugzeug', flightTypeAircraftType: 'aircraft'}, {name: 'Motorsegler', flightTypeAircraftType: 'motor_glider'}, - {name: 'Hubschrauber', flightTypeAircraftType: 'helicopter'}, - {name: 'Eigenbauhubschrauber', flightTypeAircraftType: 'helicopter'}, - {name: 'Segelflugzeug', flightTypeAircraftType: 'glider'}, - {name: 'Eigenbausegelflugzeug', flightTypeAircraftType: 'glider'}, + {name: 'Hubschrauber', flightTypeAircraftType: 'helicopter', icon: 'helicopter'}, + {name: 'Eigenbauhubschrauber', flightTypeAircraftType: 'helicopter', icon: 'helicopter'}, + {name: 'Segelflugzeug', flightTypeAircraftType: 'glider', icon: 'glider'}, + {name: 'Eigenbausegelflugzeug', flightTypeAircraftType: 'glider', icon: 'glider'}, {name: 'Ballon (Heissluft)', flightTypeAircraftType: 'aircraft'}, {name: 'Ballon (Gas)', flightTypeAircraftType: 'aircraft'}, {name: 'Luftschiff (Heissluft)', flightTypeAircraftType: 'aircraft'}, @@ -25,11 +25,23 @@ const flightTypeAircraftType = aircraftCategory => { return null } - const category =categories.find(category => category.name === aircraftCategory) + const category = categories.find(category => category.name === aircraftCategory) if (category) { return category.flightTypeAircraftType } } -module.exports = {categories: categoryNames, isHelicopter, flightTypeAircraftType} // no ES6 export as this file is also required in build process without ES6 support +const icon = aircraftCategory => { + if (!aircraftCategory) { + return null + } + + const category = categories.find(category => category.name === aircraftCategory) + + if (category) { + return category.icon + } +} + +module.exports = {categories: categoryNames, isHelicopter, flightTypeAircraftType, icon} // no ES6 export as this file is also required in build process without ES6 support From 54e4b2232b9ad45bf204c46845999be90f5e84ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roland=20Z=C3=BCger?= Date: Mon, 6 Oct 2025 22:08:30 +0200 Subject: [PATCH 2/2] Add aircraft type icon to movement list header - Hidden if screen smaller than 980px - Also improved action buttons responsiveness (hide label if screen smaller than 1200px instead of smaller than 980px) --- src/components/MovementList/Action.js | 4 ++-- src/components/MovementList/MovementHeader.js | 17 ++++++++++++++++- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/components/MovementList/Action.js b/src/components/MovementList/Action.js index 52682c17..76a1b78d 100644 --- a/src/components/MovementList/Action.js +++ b/src/components/MovementList/Action.js @@ -10,7 +10,7 @@ const StyledAction = styled.span` ` : ` cursor: pointer; - + &:hover { color: ${props.theme.colors.main}; } @@ -20,7 +20,7 @@ const StyledAction = styled.span` const ActionLabel = styled.span` ${props => props.responsive && ` - @media (max-width: 980px) { + @media (max-width: 1200px) { display: none; }` } diff --git a/src/components/MovementList/MovementHeader.js b/src/components/MovementList/MovementHeader.js index fd6b75e5..c8d4840c 100644 --- a/src/components/MovementList/MovementHeader.js +++ b/src/components/MovementList/MovementHeader.js @@ -7,6 +7,7 @@ import MaterialIcon from '../MaterialIcon'; import HomeBaseIcon from './HomeBaseIcon'; import {ACTION_LABELS, TYPE_LABELS} from './labels'; import NoPaymentTag from './NoPaymentTag' +import AircraftTypeIcon from '../AircraftTypeIcon' const ICON_HEIGHT = 30; @@ -41,7 +42,12 @@ const ColumnsWrapper = styled.div` } .homebase { + width: 50px; + } + + .aircraftType { flex: 0.5; + padding-right: 10px; } .pilot, .datetime, .location { @@ -63,13 +69,19 @@ const ColumnsWrapper = styled.div` white-space: nowrap; } - @media (max-width: 980px) { + @media (max-width: 1200px) { .action, .delete { width: 40px; text-align: center; } } + @media (max-width: 980px) { + .aircraftType { + display: none; + } + } + @media (max-width: 600px) { .location { display: none; @@ -169,6 +181,9 @@ class MovementHeader extends React.PureComponent { + + + {props.data.lastname} {date && {date}}