Files
nexus-spa/src/app/app.config.component.ts
2022-01-07 12:28:15 +03:00

61 lines
1.6 KiB
TypeScript

import { Component, OnInit } from '@angular/core';
import { AppComponent } from './app.component';
import { AppMainComponent } from './app.main.component';
@Component({
selector: 'app-config',
templateUrl:'./app.config.component.html'
})
export class AppConfigComponent {
scale: number = 14;
scales: any[] = [12,13,14,15,16];
constructor(public app: AppComponent, public appMain: AppMainComponent) { }
replaceLink(linkElement, href) {
if (this.isIE()) {
linkElement.setAttribute('href', href);
}
else {
const id = linkElement.getAttribute('id');
const cloneLinkElement = linkElement.cloneNode(true);
cloneLinkElement.setAttribute('href', href);
cloneLinkElement.setAttribute('id', id + '-clone');
linkElement.parentNode.insertBefore(cloneLinkElement, linkElement.nextSibling);
cloneLinkElement.addEventListener('load', () => {
linkElement.remove();
cloneLinkElement.setAttribute('id', id);
});
}
}
isIE() {
return /(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent);
}
onConfigButtonClick(event) {
this.appMain.configActive = !this.appMain.configActive;
this.appMain.configClick = true;
event.preventDefault();
}
incrementScale(){
this.scale++;
this.applyScale();
}
decrementScale(){
this.scale--;
this.applyScale();
}
applyScale(){
document.documentElement.style.fontSize = this.scale + 'px';
}
}