]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared-main/date/date-toggle.component.ts
0c3949f115e6bc6f88b2cdeac5235a8fcfbf88ea
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-main / date / date-toggle.component.ts
1 import { Component, Input, OnChanges } from '@angular/core'
2 import { FromNowPipe } from '../angular/from-now.pipe'
3
4 @Component({
5 selector: 'my-date-toggle',
6 templateUrl: './date-toggle.component.html',
7 styleUrls: [ './date-toggle.component.scss' ]
8 })
9 export class DateToggleComponent implements OnChanges {
10 @Input() date: Date
11 @Input() toggled = false
12
13 dateRelative: string
14 dateAbsolute: string
15
16 constructor (private fromNowPipe: FromNowPipe) { }
17
18 ngOnChanges () {
19 this.updateDates()
20 }
21
22 toggle () {
23 this.toggled = !this.toggled
24 }
25
26 getTitle () {
27 return this.toggled
28 ? this.dateRelative
29 : this.dateAbsolute
30 }
31
32 getContent () {
33 return this.toggled
34 ? this.dateAbsolute
35 : this.dateRelative
36 }
37
38 private updateDates () {
39 this.dateRelative = this.fromNowPipe.transform(this.date)
40 this.dateAbsolute = this.date.toLocaleDateString()
41 }
42 }