@@ -35,7 +35,7 @@ class AtomicCalendar extends LitElement {
3535
3636 render ( ) {
3737 if ( this . firstrun ) {
38- console . log ( "atomic_calendar v0.8.5 loaded" )
38+ console . log ( "atomic_calendar v0.8.6 loaded" )
3939 }
4040 this . language = this . config . language != '' ? this . config . language : this . hass . language . toLowerCase ( )
4141 let timeFormat = moment . localeData ( this . language ) . longDateFormat ( 'LT' )
@@ -381,9 +381,9 @@ class AtomicCalendar extends LitElement {
381381 }
382382 this . config = {
383383 // text translations
384- title : 'Calendar ' , // Card title
385- fullDayEventText : 'All day ' , // "All day" custom text
386- untilText : 'Until ' , // "Until" custom text
384+ title : 'Kalendarz ' , // Card title
385+ fullDayEventText : 'Cały dzień ' , // "All day" custom text
386+ untilText : 'Do ' , // "Until" custom text
387387 language : '' ,
388388
389389 // main settings
@@ -411,7 +411,8 @@ class AtomicCalendar extends LitElement {
411411
412412 showNoEventsForToday : false ,
413413 noEventsForTodayText : 'No events for today' ,
414-
414+ noEventsForNextDaysText : 'No events in the next days' ,
415+
415416 timeColor : 'var(--primary-color)' , // Time text color (center bottom)
416417 timeSize : 90 , //Time text size
417418 showHours : true , //shows the bottom line (time, duration of event)
@@ -497,7 +498,8 @@ class AtomicCalendar extends LitElement {
497498 */
498499 getTitleHTML ( event ) {
499500 const titletext = ( this . config . showCalNameInEvent ) ? event . eventClass . organizer . displayName + ": " + event . title : event . title
500-
501+ //var titleColor = this.config.titleColor !='' ? this.config.titleColor : 'var(--primary-text-color)'
502+ //if (this.config.showColors && typeof event.config.titleColor != 'undefined') titleColor=event.config.titleColor
501503 const titleColor = ( this . config . showColors && typeof event . config . titleColor != 'undefined' ) ? event . config . titleColor : this . config . titleColor
502504 //const eventIcon = isEventNext ? html`<ha-icon class="nextEventIcon" icon="mdi:arrow-right-bold"></ha-icon>` : ``
503505 return html `
@@ -512,6 +514,7 @@ class AtomicCalendar extends LitElement {
512514 */
513515 getHoursHTML ( event ) {
514516 const today = moment ( )
517+ if ( event . isEmpty ) return html `< div > </ div > `
515518 // full day events, no hours set
516519 // 1. One day only, or multiple day ends today -> 'All day'
517520 if ( event . isFullOneDayEvent || ( event . isFullMoreDaysEvent && moment ( event . endTime ) . isSame ( today , 'day' ) ) )
@@ -563,7 +566,7 @@ class AtomicCalendar extends LitElement {
563566
564567 // TODO write something if no events
565568 if ( days . length == 0 ) {
566- this . content = html `No events in the next days`
569+ this . content = this . config . noEventsForNextDaysText
567570 return
568571 }
569572
@@ -580,8 +583,23 @@ class AtomicCalendar extends LitElement {
580583 }
581584 }
582585
583- // check if no events for today and push a "no events" text
584-
586+ // check if no events for today and push a "no events" fake event
587+ if ( moment ( days [ 0 ] [ 0 ] . startTime ) . isAfter ( moment ( ) , "day" ) && days [ 0 ] . length > 0 ) {
588+ var emptyEv = {
589+ eventClass :'' ,
590+ config : '' ,
591+ start : { dateTime : moment ( ) . endOf ( 'day' ) } ,
592+ end : { dateTime : moment ( ) . endOf ( 'day' ) } ,
593+ summary : this . config . noEventsForTodayText ,
594+ isFinished : false ,
595+ htmlLink : 'https://calendar.google.com/calendar/r/day?sf=true'
596+ } ;
597+ var emptyEvent = new EventClass ( emptyEv , '' )
598+ emptyEvent . isEmpty = true
599+ var d = [ ]
600+ d [ 0 ] = emptyEvent
601+ days . unshift ( d )
602+ }
585603
586604 //loop through days
587605 htmlDays = days . map ( ( day , di ) => {
@@ -1017,16 +1035,14 @@ class EventClass {
10171035 this . _startTime = this . eventClass . start . dateTime ? moment ( this . eventClass . start . dateTime ) : moment ( this . eventClass . start . date ) . startOf ( 'day' )
10181036 this . _endTime = this . eventClass . end . dateTime ? moment ( this . eventClass . end . dateTime ) : moment ( this . eventClass . end . date ) . subtract ( 1 , 'days' ) . endOf ( 'day' )
10191037 this . isFinished = false ;
1020-
1038+ this . isEmpty = false ;
10211039 }
10221040
10231041 get titleColor ( ) {
10241042 if ( this . config . titleColor )
10251043 return this . config . titleColor ;
10261044 else return 'var(--primary-text-color)' ;
10271045 }
1028-
1029-
10301046
10311047 get title ( ) {
10321048 return this . eventClass . summary
0 commit comments