matrix-dimension/web/app/widget-wrappers/terms/terms.component.ts

44 lines
1.5 KiB
TypeScript
Raw Normal View History

2019-07-06 21:40:32 +00:00
import { Component, OnInit } from "@angular/core";
import { ActivatedRoute } from "@angular/router";
import { WidgetApiService } from "../../shared/services/integrations/widget-api.service";
import { DomSanitizer, SafeHtml } from "@angular/platform-browser";
import { ToasterService } from "angular2-toaster";
import { TranslateService } from "@ngx-translate/core";
2019-07-06 21:40:32 +00:00
@Component({
2021-09-01 23:29:24 +00:00
selector: "my-terms-widget-wrapper",
2019-07-06 21:40:32 +00:00
templateUrl: "terms.component.html",
styleUrls: ["terms.component.scss"],
})
export class TermsWidgetWrapperComponent implements OnInit {
public isLoading = true;
public html: SafeHtml;
2021-09-01 23:01:01 +00:00
constructor(
private activatedRoute: ActivatedRoute,
private sanitizer: DomSanitizer,
private toaster: ToasterService,
private widgetApi: WidgetApiService,
public translate: TranslateService
) {
this.translate = translate;
2019-07-06 21:40:32 +00:00
}
public ngOnInit(): void {
const params: any = this.activatedRoute.snapshot.params;
2021-09-01 23:01:01 +00:00
this.widgetApi
.getTerms(params.shortcode, params.lang, params.version)
.then((terms) => {
this.html = this.sanitizer.bypassSecurityTrustHtml(terms.text);
this.isLoading = false;
})
.catch((err) => {
console.error(err);
this.translate.get("Error loading policy").subscribe((res: string) => {
this.toaster.pop("error", res);
});
});
2019-07-06 21:40:32 +00:00
}
}