Telegram Web K with changes to work inside I2P
https://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.9 KiB
59 lines
1.9 KiB
/* |
|
* https://github.com/morethanwords/tweb |
|
* Copyright (C) 2019-2021 Eduard Kuzmenko |
|
* https://github.com/morethanwords/tweb/blob/master/LICENSE |
|
* |
|
* Originally from: |
|
* https://github.com/zhukov/webogram |
|
* Copyright (C) 2014 Igor Zhukov <igor.beatle@gmail.com> |
|
* https://github.com/zhukov/webogram/blob/master/LICENSE |
|
*/ |
|
|
|
import type { ApplyServerTimeOffsetTask } from './timeManager'; |
|
import { MOUNT_CLASS_TO } from '../../config/debug'; |
|
// import { tsNow } from '../../helpers/date'; |
|
import sessionStorage from '../sessionStorage'; |
|
import apiManager from './mtprotoworker'; |
|
|
|
export class ServerTimeManager { |
|
/* private midnightNoOffset: number; |
|
private midnightOffseted: Date; |
|
|
|
private midnightOffset: number; */ |
|
|
|
public serverTimeOffset: number; // in seconds |
|
/* private timeParams: { |
|
midnightOffset: number, |
|
serverTimeOffset: number |
|
}; */ |
|
|
|
constructor() { |
|
/* const timestampNow = tsNow(true); |
|
this.midnightNoOffset = timestampNow - (timestampNow % 86400); |
|
this.midnightOffseted = new Date(); |
|
this.midnightOffseted.setHours(0, 0, 0, 0); |
|
|
|
this.midnightOffset = this.midnightNoOffset - (Math.floor(+this.midnightOffseted / 1000)); */ |
|
|
|
this.serverTimeOffset = 0; |
|
/* this.timeParams = { |
|
midnightOffset: this.midnightOffset, |
|
serverTimeOffset: this.serverTimeOffset |
|
}; */ |
|
|
|
sessionStorage.get('server_time_offset').then((to) => { |
|
if(to) { |
|
this.serverTimeOffset = to; |
|
// this.timeParams.serverTimeOffset = to; |
|
} |
|
}); |
|
|
|
apiManager.addTaskListener('applyServerTimeOffset', (task: ApplyServerTimeOffsetTask) => { |
|
this.serverTimeOffset = task.payload; |
|
}); |
|
} |
|
} |
|
|
|
const serverTimeManager = new ServerTimeManager(); |
|
MOUNT_CLASS_TO && (MOUNT_CLASS_TO.serverTimeManager = serverTimeManager); |
|
export default serverTimeManager;
|
|
|