improved date formatting and translation handling
This commit is contained in:
parent
2ec5036348
commit
27a148afcf
4 changed files with 78 additions and 29 deletions
11
.vscode/settings.json
vendored
Normal file
11
.vscode/settings.json
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"cSpell.words": [
|
||||
"friday",
|
||||
"monday",
|
||||
"saturday",
|
||||
"sunday",
|
||||
"thursday",
|
||||
"tuesday",
|
||||
"wednesday"
|
||||
]
|
||||
}
|
||||
|
|
@ -14,6 +14,7 @@ import { ChatMsgBoxComponent } from '../chat-msg-box/chat-msg-box.component';
|
|||
import { CommonModule } from '@angular/common';
|
||||
import { ChannelService } from '../../../service/channel.service';
|
||||
import { InfoComponent } from '../info/info.component';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-chat-content',
|
||||
|
|
@ -44,6 +45,7 @@ export class ChatContentComponent implements AfterViewInit {
|
|||
private chatService: ChatService,
|
||||
private userService: UserService,
|
||||
public channelService: ChannelService,
|
||||
private translateService: TranslateService,
|
||||
private renderer: Renderer2
|
||||
) {}
|
||||
|
||||
|
|
@ -118,40 +120,24 @@ export class ChatContentComponent implements AfterViewInit {
|
|||
* @param {number} timestamp - The timestamp to convert.
|
||||
* @returns {string} The formatted date string.
|
||||
*/
|
||||
convertTimestampDate(timestamp: number) {
|
||||
convertTimestampDate(timestamp: number): string {
|
||||
const currentDate = new Date();
|
||||
const inputDate = new Date(timestamp * 1000);
|
||||
|
||||
const days = [
|
||||
'Sunday',
|
||||
'Monday',
|
||||
'Tuesday',
|
||||
'Wednesday',
|
||||
'Thursday',
|
||||
'Friday',
|
||||
'Saturday',
|
||||
];
|
||||
const months = [
|
||||
'Jan.',
|
||||
'Feb.',
|
||||
'Mar.',
|
||||
'Apr.',
|
||||
'May.',
|
||||
'Jun.',
|
||||
'Jul.',
|
||||
'Aug.',
|
||||
'Sep.',
|
||||
'Oct.',
|
||||
'Nov.',
|
||||
'Dec.',
|
||||
];
|
||||
|
||||
const dayNumber = inputDate.getDate();
|
||||
const day = days[inputDate.getDay()];
|
||||
const month = months[inputDate.getMonth()];
|
||||
|
||||
const day = this.translateService.instant(
|
||||
`weekdays.${inputDate
|
||||
.toLocaleDateString('en-US', { weekday: 'long' })
|
||||
.toLowerCase()}`
|
||||
);
|
||||
const month = this.translateService.instant(
|
||||
`months.${inputDate
|
||||
.toLocaleDateString('en-US', { month: 'short' })
|
||||
.toLowerCase()}`
|
||||
);
|
||||
|
||||
if (inputDate.toDateString() === currentDate.toDateString()) {
|
||||
return `Today`;
|
||||
return this.translateService.instant('weekdays.today');
|
||||
} else {
|
||||
return `${day}, ${dayNumber} ${month}`;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -217,6 +217,32 @@
|
|||
"message": "Direktnachrichten"
|
||||
},
|
||||
|
||||
"weekdays": {
|
||||
"monday": "Montag",
|
||||
"tuesday": "Dienstag",
|
||||
"wednesday": "Mittwoch",
|
||||
"thursday": "Donnerstag",
|
||||
"friday": "Freitag",
|
||||
"saturday": "Samstag",
|
||||
"sunday": "Sonntag",
|
||||
"today": "Heute"
|
||||
},
|
||||
|
||||
"months": {
|
||||
"jan": "Jan.",
|
||||
"feb": "Feb.",
|
||||
"mar": "Mär.",
|
||||
"apr": "Apr.",
|
||||
"may": "Mai",
|
||||
"jun": "Jun.",
|
||||
"jul": "Jul.",
|
||||
"aug": "Aug.",
|
||||
"sep": "Sep.",
|
||||
"oct": "Okt.",
|
||||
"nov": "Nov.",
|
||||
"dec": "Dez."
|
||||
},
|
||||
|
||||
"imprint": {
|
||||
"headline": "Imprint",
|
||||
"tmg": "Angaben gemäß §5 TMG",
|
||||
|
|
|
|||
|
|
@ -217,6 +217,32 @@
|
|||
"message": "Direct Messages"
|
||||
},
|
||||
|
||||
"weekdays": {
|
||||
"monday": "Monday",
|
||||
"tuesday": "Tuesday",
|
||||
"wednesday": "Wednesday",
|
||||
"thursday": "Thursday",
|
||||
"friday": "Friday",
|
||||
"saturday": "Saturday",
|
||||
"sunday": "Sunday",
|
||||
"today": "Today"
|
||||
},
|
||||
|
||||
"months": {
|
||||
"jan": "Jan.",
|
||||
"feb": "Feb.",
|
||||
"mar": "Mar.",
|
||||
"apr": "Apr.",
|
||||
"may": "May",
|
||||
"jun": "Jun.",
|
||||
"jul": "Jul.",
|
||||
"aug": "Aug.",
|
||||
"sep": "Sep.",
|
||||
"oct": "Oct.",
|
||||
"nov": "Nov.",
|
||||
"dec": "Dec."
|
||||
},
|
||||
|
||||
"imprint": {
|
||||
"headline": "Imprint",
|
||||
"tmg": "Information according to §5 TMG",
|
||||
|
|
|
|||
Loading…
Reference in a new issue