X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fassets%2Fplayer%2Fpeertube-player-manager.ts;h=533ee1bb8f8de2a11ddd8b192bc7ff0a2a176398;hb=3545e72c686ff1725bbdfd8d16d693e2f4aa75a3;hp=b24b6966eb6272defb5617b47211edc0e27efd89;hpb=60f013e1031871b7e0913c724f0bd2e569721c8e;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/assets/player/peertube-player-manager.ts b/client/src/assets/player/peertube-player-manager.ts index b24b6966e..533ee1bb8 100644 --- a/client/src/assets/player/peertube-player-manager.ts +++ b/client/src/assets/player/peertube-player-manager.ts @@ -22,7 +22,9 @@ import './shared/playlist/playlist-plugin' import './shared/mobile/peertube-mobile-plugin' import './shared/mobile/peertube-mobile-buttons' import './shared/hotkeys/peertube-hotkeys-plugin' +import './shared/metrics/metrics-plugin' import videojs from 'video.js' +import { logger } from '@root-helpers/logger' import { PluginsManager } from '@root-helpers/plugins-manager' import { isMobile } from '@root-helpers/web-browser' import { saveAverageBandwidth } from './peertube-player-local-storage' @@ -127,6 +129,28 @@ export class PeertubePlayerManager { saveAverageBandwidth(data.bandwidthEstimate) }) + const offlineNotificationElem = document.createElement('div') + offlineNotificationElem.classList.add('vjs-peertube-offline-notification') + offlineNotificationElem.innerText = player.localize('You seem to be offline and the video may not work') + + const handleOnline = () => { + player.el().removeChild(offlineNotificationElem) + logger.info('The browser is online') + } + + const handleOffline = () => { + player.el().appendChild(offlineNotificationElem) + logger.info('The browser is offline') + } + + window.addEventListener('online', handleOnline) + window.addEventListener('offline', handleOffline) + + player.on('dispose', () => { + window.removeEventListener('online', handleOnline) + window.removeEventListener('offline', handleOffline) + }) + return res(player) }) }) @@ -145,7 +169,7 @@ export class PeertubePlayerManager { return } - console.log('Fast forwarding HLS to recover from an error.') + logger.info('Fast forwarding HLS to recover from an error.') this.videojsDecodeErrors++ @@ -170,7 +194,7 @@ export class PeertubePlayerManager { return } - console.log('Fallback to webtorrent.') + logger.info('Fallback to webtorrent.') this.rebuildAndUpdateVideoElement(currentPlayer, options.common)