@@ -754,7 +754,12 @@ export class WeekPlannerCard extends LitElement {
754
754
name : this . hass . formatEntityAttributeValue ( this . hass . states [ calendar . entity ] , 'friendly_name' )
755
755
}
756
756
}
757
- let calendarSorting = calendarNumber ;
757
+ if ( ! calendar . sorting ) {
758
+ calendar = {
759
+ ...calendar ,
760
+ sorting : calendarNumber
761
+ }
762
+ }
758
763
this . _loading ++ ;
759
764
this . hass . callApi (
760
765
'get' ,
@@ -778,9 +783,9 @@ export class WeekPlannerCard extends LitElement {
778
783
let fullDay = this . _isFullDay ( startDate , endDate ) ;
779
784
780
785
if ( ! fullDay && ! this . _isSameDay ( startDate , endDate ) ) {
781
- this . _handleMultiDayEvent ( event , startDate , endDate , calendar , calendarSorting ) ;
786
+ this . _handleMultiDayEvent ( event , startDate , endDate , calendar ) ;
782
787
} else {
783
- this . _addEvent ( event , startDate , endDate , fullDay , calendar , calendarSorting ) ;
788
+ this . _addEvent ( event , startDate , endDate , fullDay , calendar ) ;
784
789
}
785
790
} ) ;
786
791
@@ -826,7 +831,7 @@ export class WeekPlannerCard extends LitElement {
826
831
|| calendarFilter && event . summary . match ( calendarFilter ) ;
827
832
}
828
833
829
- _addEvent ( event , startDate , endDate , fullDay , calendar , calendarSorting ) {
834
+ _addEvent ( event , startDate , endDate , fullDay , calendar ) {
830
835
if ( this . _hideWeekend && startDate . weekday >= 6 ) {
831
836
return ;
832
837
}
@@ -849,8 +854,8 @@ export class WeekPlannerCard extends LitElement {
849
854
if ( calendar . name && this . _calendarEvents [ eventKey ] . calendarNames . indexOf ( calendar . name ) === - 1 ) {
850
855
this . _calendarEvents [ eventKey ] . calendarNames . push ( calendar . name ) ;
851
856
}
852
- if ( calendarSorting < this . _calendarEvents [ eventKey ] . calendarSorting ) {
853
- this . _calendarEvents [ eventKey ] . calendarSorting = calendarSorting ;
857
+ if ( calendar . sorting < this . _calendarEvents [ eventKey ] . calendarSorting ) {
858
+ this . _calendarEvents [ eventKey ] . calendarSorting = calendar . sorting ;
854
859
}
855
860
} else {
856
861
this . _calendarEvents [ eventKey ] = {
@@ -865,7 +870,7 @@ export class WeekPlannerCard extends LitElement {
865
870
colors : [ calendar . color ?? 'inherit' ] ,
866
871
icon : calendar . icon ?? null ,
867
872
calendars : [ calendar . entity ] ,
868
- calendarSorting : calendarSorting ,
873
+ calendarSorting : calendar . sorting ,
869
874
calendarNames : [ calendar . name ] ,
870
875
class : this . _getEventClass ( startDate , endDate , fullDay )
871
876
}
@@ -952,13 +957,13 @@ export class WeekPlannerCard extends LitElement {
952
957
return classes . join ( ' ' ) ;
953
958
}
954
959
955
- _handleMultiDayEvent ( event , startDate , endDate , calendar , calendarSorting ) {
960
+ _handleMultiDayEvent ( event , startDate , endDate , calendar ) {
956
961
while ( startDate < endDate ) {
957
962
let eventStartDate = startDate ;
958
963
startDate = startDate . plus ( { days : 1 } ) . startOf ( 'day' ) ;
959
964
let eventEndDate = startDate < endDate ? startDate : endDate ;
960
965
961
- this . _addEvent ( event , eventStartDate , eventEndDate , this . _isFullDay ( eventStartDate , eventEndDate ) , calendar , calendarSorting ) ;
966
+ this . _addEvent ( event , eventStartDate , eventEndDate , this . _isFullDay ( eventStartDate , eventEndDate ) , calendar ) ;
962
967
}
963
968
}
964
969
0 commit comments