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

/*
* 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;