@ -25,13 +25,16 @@ function millisecondsToString(milliseconds) {
return parts . map ( ( part ) => part . toString ( ) . padStart ( 2 , "0" ) ) . join ( ":" ) ;
}
function generateStreamTitle ( session , showEpisodeNumber ) {
const { media _type , parent _media _index , media _index , title , grandparent _title , full _title } = session ;
function generateStreamTitle ( session , enableUser , showEpisodeNumber ) {
let stream _title = "" ;
const { media _type , parent _media _index , media _index , title , grandparent _title , full _title , username } = session ;
if ( media _type === "episode" && showEpisodeNumber ) {
return ` ${ grandparent _title } : S ${ parent _media _index . toString ( ) . padStart ( 2 , "0" ) } · E ${ media _index . toString ( ) . padStart ( 2 , "0" ) } - ${ title } ` ;
stream _title = ` ${ grandparent _title } : S ${ parent _media _index . toString ( ) . padStart ( 2 , "0" ) } · E ${ media _index . toString ( ) . padStart ( 2 , "0" ) } - ${ title } ` ;
} else {
stream _title = full _title ;
}
return full _title ;
return enableUser ? ` ${ stream _title } ( ${ username } ) ` : stream _title ;
}
function SingleSessionEntry ( { session , enableUser , showEpisodeNumber } ) {
@ -42,18 +45,16 @@ function SingleSessionEntry({ session, enableUser, showEpisodeNumber }) {
state ,
video _decision ,
audio _decision ,
username
} = session ;
const stream _title = generateStreamTitle ( session , showEpisodeNumber)
const stream _title = generateStreamTitle ( session , enableUser, showEpisodeNumber) ;
return (
< >
< div className = "text-theme-700 dark:text-theme-200 relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1 flex" >
< div className = "text-xs z-10 self-center ml-2 relative w-full h-4 grow mr-2" >
< div className = "absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" >
< div className = "absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title = { stream _title } >
{ stream _title }
{ enableUser && ` ( ${ username } ) ` }
< / div >
< / div >
< div className = "self-center text-xs flex justify-end mr-1.5 pl-1" >
@ -103,10 +104,9 @@ function SessionEntry({ session, enableUser, showEpisodeNumber }) {
state ,
video _decision ,
audio _decision ,
username
} = session ;
const stream _title = generateStreamTitle ( session , showEpisodeNumber)
const stream _title = generateStreamTitle ( session , enableUser, showEpisodeNumber)
return (
< div className = "text-theme-700 dark:text-theme-200 relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1 flex" >
@ -125,9 +125,8 @@ function SessionEntry({ session, enableUser, showEpisodeNumber }) {
) }
< / div >
< div className = "text-xs z-10 self-center ml-2 relative w-full h-4 grow mr-2" >
< div className = "absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" >
< div className = "absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title = { stream _title } >
{ stream _title }
{ enableUser && ` ( ${ username } ) ` }
< / div >
< / div >
< div className = "self-center text-xs flex justify-end mr-1.5 pl-1 z-10" >