@@ -52,8 +52,12 @@ class UI {
5252 totalElement . appendChild ( spanTime ) ;
5353 }
5454
55- fillEmptyBlock ( ) {
56- document . getElementById ( 'chart' ) . innerHTML = '<p class="no-data">No data</p>' ;
55+ fillEmptyBlock ( elementName ) {
56+ document . getElementById ( elementName ) . innerHTML = '<p class="no-data">No data</p>' ;
57+ }
58+
59+ fillEmptyBlockForDays ( ) {
60+ document . getElementById ( 'tableForDaysBlock' ) . innerHTML = '<p class="no-data">Invalid date</p>' ;
5761 }
5862
5963 addHrAfterChart ( ) {
@@ -158,6 +162,8 @@ class UI {
158162 calendarTwo . type = 'date' ;
159163 calendarTwo . valueAsDate = new Date ( Date . UTC ( dateNow . getFullYear ( ) , dateNow . getMonth ( ) , dateNow . getDate ( ) ) ) ;
160164
165+ var tableForDaysBlock = document . createElement ( 'div' ) ;
166+ tableForDaysBlock . id = 'tableForDaysBlock' ;
161167 var header = document . createElement ( 'div' ) ;
162168 header . classList . add ( 'table-header' ) ;
163169
@@ -171,12 +177,22 @@ class UI {
171177 header . appendChild ( headerTitleDate ) ;
172178 header . appendChild ( headerTitleTime ) ;
173179
180+ tableForDaysBlock . appendChild ( header ) ;
181+
174182 div . appendChild ( from ) ;
175183 div . appendChild ( calendarFirst ) ;
176184 div . appendChild ( to ) ;
177185 div . appendChild ( calendarTwo ) ;
178186
179- div . append ( header ) ;
187+ div . append ( tableForDaysBlock ) ;
188+
189+ document . getElementById ( 'dateFrom' ) . addEventListener ( 'change' , function ( ) {
190+ getTabsByDays ( tabsFromStorage ) ;
191+ } ) ;
192+
193+ document . getElementById ( 'dateTo' ) . addEventListener ( 'change' , function ( ) {
194+ getTabsByDays ( tabsFromStorage ) ;
195+ } ) ;
180196 }
181197
182198 getDateRange ( ) {
@@ -187,21 +203,27 @@ class UI {
187203 }
188204
189205 fillListOfDays ( days ) {
190- var parent = document . getElementById ( 'byDays' ) ;
191- for ( var i = 0 ; i < days . length ; i ++ ) {
192- var div = document . createElement ( 'div' ) ;
193- div . classList . add ( 'day-block' ) ;
194- var span = document . createElement ( 'span' ) ;
195- span . classList . add ( 'day' ) ;
196- span . innerHTML = days [ i ] . date ;
197- var spanTime = document . createElement ( 'span' ) ;
198- spanTime . classList . add ( 'day-time' ) ;
199- spanTime . innerHTML = convertSummaryTimeToString ( days [ i ] . total ) ;
200-
201- div . appendChild ( span ) ;
202- div . appendChild ( spanTime ) ;
203-
204- parent . appendChild ( div ) ;
206+ var parent = document . getElementById ( 'tableForDaysBlock' ) ;
207+ parent . innerHTML = null ;
208+ if ( days . length > 0 ) {
209+ for ( var i = 0 ; i < days . length ; i ++ ) {
210+ var div = document . createElement ( 'div' ) ;
211+ div . classList . add ( 'day-block' ) ;
212+ var span = document . createElement ( 'span' ) ;
213+ span . classList . add ( 'day' ) ;
214+ span . innerHTML = days [ i ] . date ;
215+ var spanTime = document . createElement ( 'span' ) ;
216+ spanTime . classList . add ( 'day-time' ) ;
217+ spanTime . innerHTML = convertSummaryTimeToString ( days [ i ] . total ) ;
218+
219+ div . appendChild ( span ) ;
220+ div . appendChild ( spanTime ) ;
221+
222+ parent . appendChild ( div ) ;
223+ }
224+
225+ } else {
226+ this . fillEmptyBlock ( 'tableForDaysBlock' ) ;
205227 }
206228 }
207229}
0 commit comments