|
|
|
@@ -3,47 +3,19 @@ import {MatSort, Sort, MatSortModule} from "@angular/material/sort"; |
|
|
|
import {LiveAnnouncer} from "@angular/cdk/a11y"; |
|
|
|
import {MatTableDataSource, MatTableModule} from "@angular/material/table"; |
|
|
|
import {ActivatedRoute, RouterLink, RouterLinkActive} from "@angular/router"; |
|
|
|
import {Subscription} from "rxjs"; |
|
|
|
import {PartnerJsonld, PartnerService} from "@app/core/api/v1"; |
|
|
|
|
|
|
|
export interface PeriodicElement { |
|
|
|
position: number; |
|
|
|
partner: string; |
|
|
|
pos: number; |
|
|
|
name: string; |
|
|
|
street: string; |
|
|
|
street_no: string; |
|
|
|
streetNo: string; |
|
|
|
zip: string; |
|
|
|
city: string; |
|
|
|
website: string; |
|
|
|
} |
|
|
|
|
|
|
|
const ELEMENT_DATA: PeriodicElement[] = [ |
|
|
|
{ |
|
|
|
position: 1, |
|
|
|
partner: 'spawntree GmbH', |
|
|
|
street: 'Bauernvogtskoppel', |
|
|
|
street_no: '6c', |
|
|
|
zip: '21465', |
|
|
|
city: 'Wentorf', |
|
|
|
website: 'http://spawntree.de' |
|
|
|
}, |
|
|
|
{ |
|
|
|
position: 2, |
|
|
|
partner: 'Peter Pan AG', |
|
|
|
street: 'Heinrich-Löhns-Weg', |
|
|
|
street_no: '123b', |
|
|
|
zip: '22134', |
|
|
|
city: 'Hamburg', |
|
|
|
website: '' |
|
|
|
}, |
|
|
|
{ |
|
|
|
position: 3, |
|
|
|
partner: 'Weit Weg GmbH', |
|
|
|
street: 'Hans-Werner-Olm Straße', |
|
|
|
street_no: '1', |
|
|
|
zip: '87254', |
|
|
|
city: 'München', |
|
|
|
website: 'http://weitweg.de' |
|
|
|
}, |
|
|
|
]; |
|
|
|
|
|
|
|
@Component({ |
|
|
|
selector: 'app-partners', |
|
|
|
templateUrl: './partners.component.html', |
|
|
|
@@ -54,17 +26,43 @@ const ELEMENT_DATA: PeriodicElement[] = [ |
|
|
|
export class PartnersComponent implements OnInit, AfterViewInit { |
|
|
|
@ViewChild(MatSort) sort; |
|
|
|
|
|
|
|
|
|
|
|
protected partnersSub: Subscription; |
|
|
|
protected partners: Array<PartnerJsonld> = []; |
|
|
|
|
|
|
|
dataType!: string; |
|
|
|
displayedColumns: string[] = ['position', 'partner', 'address', 'website']; |
|
|
|
dataSource = new MatTableDataSource(ELEMENT_DATA); |
|
|
|
displayedColumns: string[] = ['pos', 'name', 'address', 'website']; |
|
|
|
dataSource = new MatTableDataSource(this.partners); |
|
|
|
|
|
|
|
constructor(private _liveAnnouncer: LiveAnnouncer, private route: ActivatedRoute) { |
|
|
|
constructor( |
|
|
|
private _liveAnnouncer: LiveAnnouncer, |
|
|
|
private route: ActivatedRoute, |
|
|
|
private partnerService: PartnerService |
|
|
|
) { |
|
|
|
this.sort = new MatSort(); |
|
|
|
|
|
|
|
this.partnersSub = new Subscription(); |
|
|
|
this.partners = []; |
|
|
|
} |
|
|
|
|
|
|
|
ngOnInit() { |
|
|
|
this.dataType = this.route.snapshot.data['dataType']; |
|
|
|
console.log('Data Type:', this.dataType); |
|
|
|
|
|
|
|
this.partnersSub = this.partnerService.partnersGetCollection().subscribe( |
|
|
|
data => { |
|
|
|
this.partners = data["hydra:member"]; |
|
|
|
// this.partners.sort((a, b) => { |
|
|
|
// const nameA = a.name ? a.name.toLowerCase() : ''; |
|
|
|
// const nameB = b.name ? b.name.toLowerCase() : ''; |
|
|
|
// return nameA.localeCompare(nameB); |
|
|
|
// }); |
|
|
|
|
|
|
|
this.dataSource.data = this.partners; |
|
|
|
console.log(this.partners); |
|
|
|
} |
|
|
|
); |
|
|
|
console.log(this.dataSource.data); |
|
|
|
} |
|
|
|
|
|
|
|
ngAfterViewInit() { |
|
|
|
|