@@ -34,7 +34,6 @@ import { SystemCenter, OpenXDA } from '@gpa-gemstone/application-typings';
3434import { Search } from '@gpa-gemstone/react-interactive' ;
3535import { SelectDateTimeFormat , SelectDateTimeSetting , SelectTimeZone } from '../SettingsSlice' ;
3636import moment from 'moment' ;
37- import { SEBrowser } from 'Scripts/TSX/global' ;
3837
3938interface IProps {
4039 toggleVis : ( ) => void ,
@@ -63,6 +62,7 @@ const EventSearchNavbar = (props: IProps) => {
6362 const assetGroupList = useAppSelector ( SelectAssetGroupList ) ;
6463 const eventTypeFilter = useAppSelector ( SelectTypeFilter ) ;
6564 const dateTimeSetting = useAppSelector ( SelectDateTimeSetting ) ;
65+ const dateTimeFormat = useAppSelector ( SelectDateTimeFormat ) ;
6666 const eventCharacteristicFilter = useAppSelector ( SelectCharacteristicFilter ) ;
6767
6868 const [ height , setHeight ] = React . useState < number > ( 0 ) ;
@@ -84,17 +84,21 @@ const EventSearchNavbar = (props: IProps) => {
8484
8585 React . useEffect ( ( ) => {
8686 let range = "" ;
87- const startMoment = moment ( timeFilter . start ) ; // These default to the date+time format
88- const endMoment = moment ( timeFilter . end ) ;
87+ const startMoment = moment ( timeFilter . start , dateTimeFormat ) ;
88+ const endMoment = moment ( timeFilter . end , dateTimeFormat ) ;
8989 const unit = findAppropriateUnit ( startMoment , endMoment ) ;
90- const startEndDifference = startMoment . diff ( endMoment , unit ) ;
9190
92- if ( dateTimeSetting == 'startEnd' )
91+ if ( dateTimeSetting == 'startEnd' ) {
9392 range = `${ timeFilter . start } to ${ timeFilter . end } (${ timeZone } )` ;
94- if ( dateTimeSetting == 'startWindow' )
95- range = `${ timeFilter . start } (${ timeZone } ) +${ startEndDifference } ` ;
96- else if ( dateTimeSetting == 'endWindow' )
97- range = `${ timeFilter . end } (${ timeZone } ) -${ startEndDifference } ` ;
93+ }
94+ else if ( dateTimeSetting == 'startWindow' ) {
95+ const startEndDifference = endMoment . diff ( startMoment , unit ) ;
96+ range = `${ timeFilter . start } (${ timeZone } ) ${ startEndDifference } ${ findDisplayUnit ( unit ) } ` ;
97+ }
98+ else if ( dateTimeSetting == 'endWindow' ) {
99+ const startEndDifference = startMoment . diff ( endMoment , unit ) ;
100+ range = `${ timeFilter . end } (${ timeZone } ) ${ startEndDifference } ${ findDisplayUnit ( unit ) } ` ;
101+ }
98102
99103 setTimeRange ( range ) ;
100104 } , [ timeFilter , dateTimeSetting , timeZone ] )
@@ -120,6 +124,27 @@ const EventSearchNavbar = (props: IProps) => {
120124 return units [ 0 ] ;
121125 }
122126
127+ function findDisplayUnit ( unit ) : string {
128+ switch ( unit ) {
129+ case 'ms' :
130+ return 'miliseconds' ;
131+ case 's' :
132+ return 'seconds' ;
133+ case 'm' :
134+ return 'minutes' ;
135+ case 'h' :
136+ return 'hours' ;
137+ case 'd' :
138+ return 'days' ;
139+ case 'w' :
140+ return 'weeks' ;
141+ case 'M' :
142+ return 'months' ;
143+ case 'y' :
144+ return 'years' ;
145+ }
146+ }
147+
123148 function getEnum ( setOptions , field ) {
124149 let handle = null ;
125150 if ( field . type != 'enum' || field . enum == undefined || field . enum . length != 1 )
@@ -198,7 +223,7 @@ const EventSearchNavbar = (props: IProps) => {
198223 } ;
199224 }
200225
201- if ( timeFilter === null ) return null ;
226+ if ( timeFilter === null ) { console . log ( 'null time filter' ) ; return null ; }
202227
203228 if ( ! props . showNav )
204229 return (
@@ -218,6 +243,7 @@ const EventSearchNavbar = (props: IProps) => {
218243
219244 // Wrapper function to match the expected type for setFilter
220245 const handleSetFilter = ( start : string , end : string ) => {
246+ console . log ( '#####' , start , end ) ;
221247 dispatch ( SetFilters ( {
222248 time : {
223249 start : start ,
0 commit comments