🔀 Merge add and get pin services

navbar
Alexis Feron 3 months ago
parent 61a5acd811
commit 5da162fcb7

@ -8,9 +8,8 @@ describe('AddPinPopupComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [AddPinPopupComponent]
})
.compileComponents();
imports: [AddPinPopupComponent],
}).compileComponents();
fixture = TestBed.createComponent(AddPinPopupComponent);
component = fixture.componentInstance;

@ -13,8 +13,8 @@ import {
distinctUntilChanged,
switchMap,
} from 'rxjs/operators';
import { AddPinService } from '../../services/add-pin.service';
import { AutocompleteService } from '../../services/auto-complete.service';
import { PinService } from '../../services/pin.service';
import { DragDropComponent } from '../drag-drop/drag-drop.component';
@Component({
@ -34,7 +34,7 @@ export class AddPinPopupComponent implements OnInit {
constructor(
private fb: FormBuilder,
private autocompleteService: AutocompleteService,
private addPinService: AddPinService
private pinService: PinService
) {
this.form = this.fb.group({
title: new FormControl(''),
@ -100,7 +100,7 @@ export class AddPinPopupComponent implements OnInit {
files: this.files,
};
this.addPinService.addPin(pinData).subscribe(() => {
this.pinService.addPin(pinData).subscribe(() => {
this.closePinModal();
});
} else {

@ -2,7 +2,7 @@ import { Component, OnInit, ViewContainerRef } from '@angular/core';
import * as L from 'leaflet';
import 'leaflet/dist/leaflet.css';
import { Monument } from '../../model/Monument';
import { GetPinService } from '../../services/get-pin.service';
import { PinService } from '../../services/pin.service';
import { MonumentMarkerComponent } from '../monument-marker/monument-marker.component';
@Component({
@ -14,7 +14,7 @@ export class LeafletMapComponent implements OnInit {
constructor(
private viewContainerRef: ViewContainerRef,
private getPinsService: GetPinService
private pinsService: PinService
) {}
ngOnInit(): void {
@ -51,7 +51,7 @@ export class LeafletMapComponent implements OnInit {
</svg>
`);
this.getPinsService.getPins().subscribe((monuments: Monument[]) => {
this.pinsService.getPins().subscribe((monuments: Monument[]) => {
console.log(monuments);
// Add markers
monuments.forEach((monument: Monument) => {

@ -1,16 +0,0 @@
import { TestBed } from '@angular/core/testing';
import { GetPinService } from './get-pin.service';
describe('GetPinService', () => {
let service: GetPinService;
beforeEach(() => {
TestBed.configureTestingModule({});
service = TestBed.inject(GetPinService);
});
it('should be created', () => {
expect(service).toBeTruthy();
});
});

@ -1,21 +0,0 @@
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { environment } from '../../environments/environment';
@Injectable({
providedIn: 'root',
})
export class GetPinService {
private apiURL = environment.apiURL;
private token = localStorage.getItem('auth_token');
constructor(private http: HttpClient) {}
getPins(): any {
const url = `${this.apiURL}/pins`;
const headers = new HttpHeaders({
'Content-Type': 'application/json',
Authorization: 'Bearer ' + this.token,
});
return this.http.get<any>(url, { headers });
}
}

@ -1,13 +1,13 @@
import { TestBed } from '@angular/core/testing';
import { AddPinService } from './add-pin.service';
import { PinService } from './pin.service';
describe('AddPinService', () => {
let service: AddPinService;
describe('PinService', () => {
let service: PinService;
beforeEach(() => {
TestBed.configureTestingModule({});
service = TestBed.inject(AddPinService);
service = TestBed.inject(PinService);
});
it('should be created', () => {

@ -7,7 +7,7 @@ import { AutocompleteService } from './auto-complete.service';
@Injectable({
providedIn: 'root',
})
export class AddPinService {
export class PinService {
private apiURL = environment.apiURL;
private token = localStorage.getItem('auth_token');
constructor(
@ -15,6 +15,15 @@ export class AddPinService {
private autoCompleteService: AutocompleteService
) {}
getPins(): any {
const url = `${this.apiURL}/pins`;
const headers = new HttpHeaders({
'Content-Type': 'application/json',
Authorization: 'Bearer ' + this.token,
});
return this.http.get<any>(url, { headers });
}
addPin(pin: {
title: string;
description: string;
Loading…
Cancel
Save