1
+ import { Injectable } from '@angular/core' ;
2
+ import { HttpClient } from '@angular/common/http' ;
3
+
4
+ import { News } from '../models/new.model' ;
5
+ import { catchError , Observable , throwError } from 'rxjs' ;
6
+
7
+ const URL = '/api/news/' ;
8
+
9
+ @Injectable ( { providedIn : 'root' } )
10
+ export class NewsService {
11
+
12
+ constructor ( private httpClient : HttpClient ) { }
13
+
14
+ getsNews ( ) : Observable < News > {
15
+ return this . httpClient . get ( URL ) . pipe (
16
+ //catchError(error => this.handleError(error))
17
+ ) as Observable < News >
18
+ }
19
+
20
+ findNewsPage ( ) {
21
+ return this . httpClient . get ( URL + "pages" )
22
+ }
23
+
24
+ getNew ( id : number ) : Observable < News > {
25
+ return this . httpClient . get ( URL + id ) as Observable < News >
26
+ }
27
+
28
+ createNew ( news : News ) {
29
+ if ( ! news . id ) {
30
+ return this . httpClient . post ( URL , news )
31
+ } else {
32
+ return this . httpClient . put ( URL + news . id , news )
33
+ }
34
+ }
35
+
36
+ uptadeNew ( news : News ) {
37
+ return this . httpClient . put ( URL + news . id , news )
38
+ }
39
+
40
+ deleteNew ( news : News ) {
41
+ return this . httpClient . delete ( URL + news . id )
42
+ }
43
+
44
+ uploadNewImage ( news : News , formData : FormData ) {
45
+ return this . httpClient . post ( URL + news . id + '/image' , formData )
46
+ }
47
+
48
+ downloadNewImage ( news : News ) {
49
+ return this . httpClient . get ( URL + news . id + '/image' )
50
+ }
51
+
52
+ deleteNewImage ( news : News ) {
53
+ return this . httpClient . delete ( URL + news . id + '/image' )
54
+ }
55
+ /*
56
+ readNew() {
57
+ return this.httpClient.put()
58
+ }
59
+ */
60
+ /*
61
+ private handleError(error: any) {
62
+ console.log("ERROR:");
63
+ console.error(error);
64
+ return throwError("Server error (" + error.status + "): " + error.text())
65
+ }
66
+ */
67
+ }
0 commit comments