기간만료된 파일 전달 하지 못하도록 수정.
This commit is contained in:
parent
d1b7c4585d
commit
baafd13cd6
@ -98,7 +98,6 @@ export class AppWindow {
|
|||||||
// }
|
// }
|
||||||
});
|
});
|
||||||
this.window.on(ElectronBrowserWindowChannel.Focus, e => {
|
this.window.on(ElectronBrowserWindowChannel.Focus, e => {
|
||||||
console.log(e);
|
|
||||||
this.window.flashFrame(false);
|
this.window.flashFrame(false);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -172,7 +172,7 @@
|
|||||||
>
|
>
|
||||||
<ucap-chat-messages
|
<ucap-chat-messages
|
||||||
[messages]="eventList"
|
[messages]="eventList"
|
||||||
[eventInfoStatus]="eventInfoStatus$ | async"
|
[eventInfoStatus]="eventInfoStatus"
|
||||||
[eventRemain]="eventRemain$ | async"
|
[eventRemain]="eventRemain$ | async"
|
||||||
[userInfos]="userInfoList"
|
[userInfos]="userInfoList"
|
||||||
[loginRes]="loginRes"
|
[loginRes]="loginRes"
|
||||||
@ -248,12 +248,14 @@
|
|||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
mat-menu-item
|
mat-menu-item
|
||||||
|
*ngIf="isForwardableMessage(message, eventInfoStatus.validFileBaseSeq)"
|
||||||
(click)="onClickMessageContextMenu('REPLAY', message)"
|
(click)="onClickMessageContextMenu('REPLAY', message)"
|
||||||
>
|
>
|
||||||
대화 전달
|
대화 전달
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
mat-menu-item
|
mat-menu-item
|
||||||
|
*ngIf="isForwardableMessage(message, eventInfoStatus.validFileBaseSeq)"
|
||||||
(click)="onClickMessageContextMenu('REPLAY_TO_ME', message)"
|
(click)="onClickMessageContextMenu('REPLAY_TO_ME', message)"
|
||||||
>
|
>
|
||||||
대화 나에게 전달
|
대화 나에게 전달
|
||||||
|
@ -31,6 +31,7 @@ import {
|
|||||||
isRecalled,
|
isRecalled,
|
||||||
isCopyable,
|
isCopyable,
|
||||||
isRecallable,
|
isRecallable,
|
||||||
|
isForwardable,
|
||||||
InfoResponse,
|
InfoResponse,
|
||||||
EventJson,
|
EventJson,
|
||||||
FileEventJson,
|
FileEventJson,
|
||||||
@ -144,7 +145,8 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
|
|||||||
userInfoList: UserInfo[];
|
userInfoList: UserInfo[];
|
||||||
userInfoListSubscription: Subscription;
|
userInfoListSubscription: Subscription;
|
||||||
eventListProcessing$: Observable<boolean>;
|
eventListProcessing$: Observable<boolean>;
|
||||||
eventInfoStatus$: Observable<InfoResponse>;
|
eventInfoStatus: InfoResponse;
|
||||||
|
eventInfoStatusSubscription: Subscription;
|
||||||
sessionVerInfo: VersionInfo2Response;
|
sessionVerInfo: VersionInfo2Response;
|
||||||
|
|
||||||
eventRemain$: Observable<boolean>;
|
eventRemain$: Observable<boolean>;
|
||||||
@ -155,6 +157,7 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
|
|||||||
isRecalledMessage = isRecalled;
|
isRecalledMessage = isRecalled;
|
||||||
isCopyableMessage = isCopyable;
|
isCopyableMessage = isCopyable;
|
||||||
isRecallableMessage = isRecallable;
|
isRecallableMessage = isRecallable;
|
||||||
|
isForwardableMessage = isForwardable;
|
||||||
|
|
||||||
/** Timer 대화방의 대화 삭제를 위한 interval */
|
/** Timer 대화방의 대화 삭제를 위한 interval */
|
||||||
interval: any;
|
interval: any;
|
||||||
@ -253,9 +256,12 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
|
|||||||
)
|
)
|
||||||
.subscribe();
|
.subscribe();
|
||||||
|
|
||||||
this.eventInfoStatus$ = this.store.pipe(
|
this.eventInfoStatusSubscription = this.store
|
||||||
select(AppStore.MessengerSelector.EventSelector.infoStatus)
|
.pipe(
|
||||||
);
|
select(AppStore.MessengerSelector.EventSelector.infoStatus),
|
||||||
|
tap(res => (this.eventInfoStatus = res))
|
||||||
|
)
|
||||||
|
.subscribe();
|
||||||
|
|
||||||
this.interval = setInterval(() => {
|
this.interval = setInterval(() => {
|
||||||
if (!!this.roomInfo && !!this.roomInfo.isTimeRoom) {
|
if (!!this.roomInfo && !!this.roomInfo.isTimeRoom) {
|
||||||
@ -277,6 +283,9 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
|
|||||||
if (!!this.eventListSubscription) {
|
if (!!this.eventListSubscription) {
|
||||||
this.eventListSubscription.unsubscribe();
|
this.eventListSubscription.unsubscribe();
|
||||||
}
|
}
|
||||||
|
if (!!this.eventInfoStatusSubscription) {
|
||||||
|
this.eventInfoStatusSubscription.unsubscribe();
|
||||||
|
}
|
||||||
|
|
||||||
clearInterval(this.interval);
|
clearInterval(this.interval);
|
||||||
}
|
}
|
||||||
|
@ -32,3 +32,16 @@ export function isRecallable(event: Info<any>, userSeq: number): boolean {
|
|||||||
event.senderSeq === userSeq && event.type !== EventType.RecalledMessage
|
event.senderSeq === userSeq && event.type !== EventType.RecalledMessage
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function isForwardable(event: Info, expiredFileStdSeq: number): boolean {
|
||||||
|
if (event.type === EventType.File) {
|
||||||
|
if (!!expiredFileStdSeq && expiredFileStdSeq <= event.seq) {
|
||||||
|
// valid..
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
// expired..
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user