1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import { Component, OnInit, OnDestroy } from '@angular/core';
- import { HttpErrorResponse, HttpResponse } from '@angular/common/http';
- import { Subscription } from 'rxjs';
- import { JhiEventManager, JhiAlertService } from 'ng-jhipster';
-
- import { IPost } from 'app/shared/model/post.model';
- import { Principal } from 'app/core';
- import { PostService } from './post.service';
-
- @Component({
- selector: 'jhi-post',
- templateUrl: './post.component.html'
- })
- export class PostComponent implements OnInit, OnDestroy {
- posts: IPost[];
- currentAccount: any;
- eventSubscriber: Subscription;
-
- constructor(
- private postService: PostService,
- private jhiAlertService: JhiAlertService,
- private eventManager: JhiEventManager,
- private principal: Principal
- ) {}
-
- loadAll() {
- this.postService.query().subscribe(
- (res: HttpResponse<IPost[]>) => {
- this.posts = res.body;
- },
- (res: HttpErrorResponse) => this.onError(res.message)
- );
- }
-
- ngOnInit() {
- this.loadAll();
- this.principal.identity().then(account => {
- this.currentAccount = account;
- });
- this.registerChangeInPosts();
- }
-
- ngOnDestroy() {
- this.eventManager.destroy(this.eventSubscriber);
- }
-
- trackId(index: number, item: IPost) {
- return item.id;
- }
-
- registerChangeInPosts() {
- this.eventSubscriber = this.eventManager.subscribe('postListModification', response => this.loadAll());
- }
-
- private onError(errorMessage: string) {
- this.jhiAlertService.error(errorMessage, null, null);
- }
- }
|