1
1
const httpStatus = require ( "http-status" ) ;
2
- const bbcNews = require ( "../store/bbc.json" ) ;
3
- const cnnNews = require ( "../store/cnn.json" ) ;
4
- const allNews = [ ...bbcNews , ...cnnNews ] ;
2
+ const allNews = require ( "../store/data.json" ) ;
5
3
6
4
const getAllNews = ( req , res ) => {
7
5
const category = req . query . category ;
@@ -29,10 +27,15 @@ const getSingleNews = (req, res) => {
29
27
} ) ;
30
28
}
31
29
30
+ const related_news = getRelatedNews ( singleNews ) ;
31
+
32
32
return res . status ( httpStatus . OK ) . send ( {
33
33
success : true ,
34
34
message : "Returned news successfully" ,
35
- result : singleNews ,
35
+ result : {
36
+ data : singleNews ,
37
+ related_news : related_news
38
+ } ,
36
39
} ) ;
37
40
} ;
38
41
@@ -41,11 +44,7 @@ const getNewsByType = (req, res) => {
41
44
const category = req . query . category ;
42
45
let news = [ ] ;
43
46
44
- if ( type == "bbc" ) {
45
- news = bbcNews ;
46
- } else if ( type == "cnn" ) {
47
- news = cnnNews ;
48
- }
47
+ news = allNews . filter ( ( _news ) => _news . type === type )
49
48
50
49
if ( category ) {
51
50
news = getNewsByCategory ( news , category ) ;
@@ -62,4 +61,8 @@ const getNewsByCategory = (news, category) => {
62
61
return news . filter ( ( _news ) => _news . category === category ) ;
63
62
} ;
64
63
64
+ const getRelatedNews = ( news ) => {
65
+ return allNews . filter ( ( _news ) => _news . category === news . category && _news . id !== news . id && _news . type === news . type ) ;
66
+ } ;
67
+
65
68
module . exports = { getAllNews, getSingleNews, getNewsByType } ;
0 commit comments