improved date and translation handling

This commit is contained in:
Chneemann 2024-06-14 20:53:22 +02:00
parent 27a148afcf
commit 00944e80fa

View file

@ -15,7 +15,7 @@ import { PickerComponent } from '@ctrl/ngx-emoji-mart';
import { EditMsgComponent } from './edit-msg/edit-msg.component'; import { EditMsgComponent } from './edit-msg/edit-msg.component';
import { ReactionEmojisComponent } from './reaction-emojis/reaction-emojis.component'; import { ReactionEmojisComponent } from './reaction-emojis/reaction-emojis.component';
import { UserService } from '../../../service/user.service'; import { UserService } from '../../../service/user.service';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule, TranslateService } from '@ngx-translate/core';
@Component({ @Component({
selector: 'app-single-chat', selector: 'app-single-chat',
@ -60,7 +60,8 @@ export class SingleChatComponent {
public chatService: ChatService, public chatService: ChatService,
public channelService: ChatService, public channelService: ChatService,
public userService: UserService, public userService: UserService,
public downloadFilesService: DownloadFilesService public downloadFilesService: DownloadFilesService,
private translateService: TranslateService
) {} ) {}
/** /**
@ -143,29 +144,19 @@ export class SingleChatComponent {
* @param {number} timestamp - The timestamp to convert. * @param {number} timestamp - The timestamp to convert.
* @returns {string} The formatted date string. * @returns {string} The formatted date string.
*/ */
convertTimestampDate(timestamp: number) { convertTimestampDate(timestamp: number): string {
const currentDate = new Date(); const currentDate = new Date();
const inputDate = new Date(timestamp * 1000); const inputDate = new Date(timestamp * 1000);
const months = [
'Jan.',
'Feb.',
'Mar.',
'Apr.',
'May.',
'Jun.',
'Jul.',
'Aug.',
'Sep.',
'Oct.',
'Nov.',
'Dec.',
];
const dayNumber = inputDate.getDate(); const dayNumber = inputDate.getDate();
const month = months[inputDate.getMonth()]; const month = this.translateService.instant(
`months.${inputDate
.toLocaleDateString('en-US', { month: 'short' })
.toLowerCase()}`
);
if (inputDate.toDateString() === currentDate.toDateString()) { if (inputDate.toDateString() === currentDate.toDateString()) {
return `Today`; return this.translateService.instant('months.today');
} else { } else {
return `${dayNumber} ${month}`; return `${dayNumber} ${month}`;
} }