mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +01:00 
			
		
		
		
	Add:Alert when progress is not syncing
This commit is contained in:
		
							parent
							
								
									bf928692d5
								
							
						
					
					
						commit
						e8cd18eac2
					
				| @ -71,7 +71,8 @@ export default { | |||||||
|       sleepTimerRemaining: 0, |       sleepTimerRemaining: 0, | ||||||
|       sleepTimer: null, |       sleepTimer: null, | ||||||
|       displayTitle: null, |       displayTitle: null, | ||||||
|       initialPlaybackRate: 1 |       initialPlaybackRate: 1, | ||||||
|  |       syncFailedToast: null | ||||||
|     } |     } | ||||||
|   }, |   }, | ||||||
|   computed: { |   computed: { | ||||||
| @ -380,6 +381,10 @@ export default { | |||||||
|     }, |     }, | ||||||
|     pauseItem() { |     pauseItem() { | ||||||
|       this.playerHandler.pause() |       this.playerHandler.pause() | ||||||
|  |     }, | ||||||
|  |     showFailedProgressSyncs() { | ||||||
|  |       if (!isNaN(this.syncFailedToast)) this.$toast.dismiss(this.syncFailedToast) | ||||||
|  |       this.syncFailedToast = this.$toast('Progress is not being synced. Restart playback', { timeout: false, type: 'error' }) | ||||||
|     } |     } | ||||||
|   }, |   }, | ||||||
|   mounted() { |   mounted() { | ||||||
|  | |||||||
| @ -20,6 +20,7 @@ export default class PlayerHandler { | |||||||
|     this.currentSessionId = null |     this.currentSessionId = null | ||||||
|     this.startTime = 0 |     this.startTime = 0 | ||||||
| 
 | 
 | ||||||
|  |     this.failedProgressSyncs = 0 | ||||||
|     this.lastSyncTime = 0 |     this.lastSyncTime = 0 | ||||||
|     this.lastSyncedAt = 0 |     this.lastSyncedAt = 0 | ||||||
|     this.listeningTimeSinceSync = 0 |     this.listeningTimeSinceSync = 0 | ||||||
| @ -186,6 +187,7 @@ export default class PlayerHandler { | |||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   prepareSession(session) { |   prepareSession(session) { | ||||||
|  |     this.failedProgressSyncs = 0 | ||||||
|     this.startTime = session.currentTime |     this.startTime = session.currentTime | ||||||
|     this.currentSessionId = session.id |     this.currentSessionId = session.id | ||||||
|     this.displayTitle = session.displayTitle |     this.displayTitle = session.displayTitle | ||||||
| @ -286,8 +288,15 @@ export default class PlayerHandler { | |||||||
|       currentTime |       currentTime | ||||||
|     } |     } | ||||||
|     this.listeningTimeSinceSync = 0 |     this.listeningTimeSinceSync = 0 | ||||||
|     this.ctx.$axios.$post(`/api/session/${this.currentSessionId}/sync`, syncData, { timeout: 1000 }).catch((error) => { |     this.ctx.$axios.$post(`/api/session/${this.currentSessionId}/sync`, syncData, { timeout: 1000 }).then(() => { | ||||||
|  |       this.failedProgressSyncs = 0 | ||||||
|  |     }).catch((error) => { | ||||||
|       console.error('Failed to update session progress', error) |       console.error('Failed to update session progress', error) | ||||||
|  |       this.failedProgressSyncs++ | ||||||
|  |       if (this.failedProgressSyncs >= 2) { | ||||||
|  |         this.ctx.showFailedProgressSyncs() | ||||||
|  |         this.failedProgressSyncs = 0 | ||||||
|  |       } | ||||||
|     }) |     }) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user