27 lines
879 B
TypeScript
27 lines
879 B
TypeScript
|
import { v4 as uuidv4 } from 'uuid';
|
||
|
|
||
|
import { environment } from '../../../environments/environment';
|
||
|
import { DateUtilsService } from '../utils/date-utils.service';
|
||
|
|
||
|
export class Configuration {
|
||
|
constructor(
|
||
|
public isAboutDate: boolean = false,
|
||
|
public slug: string = uuidv4(),
|
||
|
public isProtectedByPassword: boolean = false,
|
||
|
public isMaybeAnswerAvailable: boolean = false,
|
||
|
public creationDate: Date = new Date(Date.now()),
|
||
|
public expirationDate: Date = DateUtilsService.addDaysToDate(
|
||
|
environment.poll.defaultConfig.expiracyInDays,
|
||
|
new Date(Date.now())
|
||
|
)
|
||
|
) {}
|
||
|
|
||
|
public getAdministrationUrl(): string {
|
||
|
return `${environment.api.baseHref}/administration/${environment.api.endpoints.polls}/${this.slug}`;
|
||
|
}
|
||
|
|
||
|
public getParticipationUrl(): string {
|
||
|
return `${environment.api.baseHref}/participation/${environment.api.endpoints.polls}/${this.slug}`;
|
||
|
}
|
||
|
}
|