From b0151af02fc16969b4c781784f1c75473b249ed3 Mon Sep 17 00:00:00 2001 From: joBr99 <29555657+joBr99@users.noreply.github.com> Date: Sat, 20 May 2023 14:26:46 +0200 Subject: [PATCH] implement card in backend #898 --- HMI/nspanel.HMI | Bin 15857830 -> 15857830 bytes HMI/nspanel.tft | Bin 8261148 -> 8261216 bytes apps/nspanel-lovelace-ui/luibackend/pages.py | 4 +++- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/HMI/nspanel.HMI b/HMI/nspanel.HMI index 09c61220ac41445383bebb720d334f790c3643a0..a538cd26ce07190b42d13fd83ac46f6919d124ed 100644 GIT binary patch delta 1746 zcmd7Q`%_e990u_3Sr$--g5~0>+lHEjrs5*vu9ig?)2Luq)XFYi^0wjv#tLp>7(M|N z6-9NhOez)4@Pb%tN~M;7V1(VNC@e9}5d5K;Y-*;5cBj`rp?Bsp^UU+U=bZPv=hR$i z3a=q;W1W^^(4^93Fo$Y=xuKp)kHKt|J}s=i%+N5q*>GIFGkumW6qzMC6$LvL)P0&r8bjB1_~h~ zg;JQ`W(sdV|G(T6qF_QaVi1cs42Bs)FciaJ!4oE;C;6|k4Cftl$a4V+cHq5|G+>SKdfje;* z(vbltT$qJS%*Gtd#of3E_hKII!~J*w4`MzRU?CRaAuPrcEX6V`hZ`%9g_ZCi8#&0u zDm;ulc(EG!D8L%{@CY8=S6JH{`nx@0hEq?S*ljN=3k`hjKf*-@8Uk4xB(f$XkbRel ztPAFgQ6k~}U%P)qi+F>*H%{blN1$GnE>almdt4%U!MtFO$O&U$P13yoa*-J3i@1Uh z&g8$>5X_N_Mfj)wJ4{Pdj#;X5+%lET%T*rgR@t&bWowqo@he5nN>She13V%l!UB0r zp2}%H_4X}=sy|n(`m7SwmzS$PqC(~JO0{O^29?{2s@0*&WC{Op)Vz)I?jI+Fh?-Z7%1a>MIVbKI*8t zHo8&e*d~<+H|wrybBvxbVf9$OIzKm7?>SX4z@MDbooLYP{?rs}k~VD7^lY!&>$8uu zUCu4#yYq$z8;72DrXX8)Pqs$JTr%qotas>jlPshC)+yZyNAxbA#pv&Q#n0D&(d>LLC@0*R7o$=OY}17 zR7D%;6?&C6(rdJds_AulgWjagw1u`(4Q-?C^cL-)x2cwP(k|Lfd#H}~Qa$aXcj#U6 z(|&r74$whrp!ewm`j8IMVLCz|(Z_U@8mWnz=@_+8D;=j#sEt0Qb~-_y(dYC9eMw)@ z*Ypi_(6{s*eNUbA1N}%{bdr9epXn5J(`ovJ&d^!auT78_`Bwlj*t?Tpwki?gjsl@epQ zR5~`x!O`DyzF{O5Mi{PshG7~+x|e-ST&PVB{o=@Sk2K8X|6u_NQIr;v_uJRy4{P7n-2eap diff --git a/HMI/nspanel.tft b/HMI/nspanel.tft index 00e8e89c4917c249e40f82c30b30578d317cec3a..287d11db2b8bfc66e2142f338f5adcac6fb6a72e 100644 GIT binary patch delta 14416 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 delta 13640 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 Aq5uE@ diff --git a/apps/nspanel-lovelace-ui/luibackend/pages.py b/apps/nspanel-lovelace-ui/luibackend/pages.py index 8768d41d..45076240 100644 --- a/apps/nspanel-lovelace-ui/luibackend/pages.py +++ b/apps/nspanel-lovelace-ui/luibackend/pages.py @@ -704,6 +704,8 @@ class LuiPagesGen(object): # Switch to page if send_page_type: + if card.cardType == "cardGrid" and len(card.entities) > 6: + card.cardType = "cardGrid2" self.page_type(card.cardType) # send sleep timeout if there is one configured for the current card @@ -713,7 +715,7 @@ class LuiPagesGen(object): self._send_mqtt_msg(f'timeout~{self._config.get("sleepTimeout")}') temp_unit = card.raw_config.get("temperatureUnit", "celsius") - if card.cardType in ["cardEntities", "cardGrid"]: + if card.cardType in ["cardEntities", "cardGrid", "cardGrid2"]: self.generate_entities_page(navigation, card.title, card.entities, card.cardType, temp_unit) return if card.cardType == "cardThermo":