import { Component, OnInit } from '@angular/core' import { ApisService } from '../services/apis.service' import { AuthService } from '../services/auth.service' @Component({ selector: 'app-admin', templateUrl: './admin.component.html', styleUrls: ['./admin.component.scss'] }) export class AdminComponent implements OnInit { public authCheck: boolean = false public userName: string = '' public password: string = '' public activeEditor: string = '' public exhibitions: any = [] public selectedExhibitions: any = [] public selectedVideos: any = [] // ngModels public videoType: string = '' public videoURL: string = '' constructor( private authService: AuthService, private apisService: ApisService ) { } ngOnInit(): void { const body = { token: window.sessionStorage.getItem('authToken') } this.authService.authCheck(body).toPromise().then((response) => { this.authCheck = response.status == 200 this.apisService.getPortfolio('exhibitions').toPromise().then((response) => { this.exhibitions = response.items },(error) => { console.error('getPortfolio ERROR', error) }).catch((e) => { console.error('getPortfolio CATCH', e) }) },(error) => { console.error('Auth ERROR', error) }).catch((e) => { console.error('Auth CATCH', e) }) } login(): void { const body = { usr: this.userName, pwd: this.password } this.authService.login(body).toPromise().then((response) => { this.authCheck = response.status == 200 if(this.authCheck) { window.sessionStorage.setItem('authToken', response.authToken) } },(error) => { console.error('Auth ERROR', error) }).catch((e) => { console.error('Auth CATCH', e) }) } showEditor(section): void { this.activeEditor = section } exhibitionAdd(id): void { this.selectedExhibitions.push( this.exhibitions.filter(item => item.id == id)[0] ) this.exhibitions = this.exhibitions.filter(item => item.id != id) } exhibitionRemove(id): void { this.exhibitions.push( this.selectedExhibitions.filter(item => item.id == id)[0] ) this.selectedExhibitions = this.selectedExhibitions.filter(item => item.id != id) } videoAdd(): void { this.selectedVideos.push({ type: this.videoType, url: this.videoURL }) this.videoURL = '' } videoRemove(url): void { this.selectedVideos = this.selectedVideos.filter(item => item.url != url) } }