|
|
@@ -0,0 +1,90 @@ |
|
|
|
import { Component, OnInit } from '@angular/core'; |
|
|
|
import { Location } from '@angular/common'; |
|
|
|
import { UserService } from '../services/user.service'; |
|
|
|
import { NewsService, IMAGE_BASE_URL } from '../services/news.service'; |
|
|
|
import { Platform } from '@ionic/angular'; |
|
|
|
import { Router } from '@angular/router'; |
|
|
|
|
|
|
|
@Component({ |
|
|
|
selector: 'app-bookmarks', |
|
|
|
templateUrl: './bookmarks.page.html', |
|
|
|
styleUrls: ['./bookmarks.page.scss'], |
|
|
|
}) |
|
|
|
export class BookmarksPage implements OnInit { |
|
|
|
bookmarked_articles: Array<{ |
|
|
|
title: string, |
|
|
|
alias: string, |
|
|
|
image: string, |
|
|
|
type: string, |
|
|
|
}> = []; |
|
|
|
|
|
|
|
image_url = IMAGE_BASE_URL; |
|
|
|
|
|
|
|
constructor( |
|
|
|
private location: Location, |
|
|
|
private userService: UserService, |
|
|
|
private newsService: NewsService, |
|
|
|
private router: Router, |
|
|
|
private platform: Platform, |
|
|
|
) { } |
|
|
|
|
|
|
|
back() { |
|
|
|
this.location.back(); |
|
|
|
} |
|
|
|
|
|
|
|
getType(type: string) { |
|
|
|
let returnType: string = ''; |
|
|
|
|
|
|
|
console.log(type); |
|
|
|
|
|
|
|
switch(type) { |
|
|
|
case 'Photos': returnType = 'gallery'; break; |
|
|
|
case 'Videos': returnType = 'videos'; break; |
|
|
|
case 'News': returnType = 'news'; break; |
|
|
|
} |
|
|
|
|
|
|
|
return returnType; |
|
|
|
} |
|
|
|
|
|
|
|
showNewsDetails(alias_title: string, type: string) { |
|
|
|
this.router.navigate(['/home-details', { alias_title: alias_title, type: type }]); |
|
|
|
} |
|
|
|
|
|
|
|
ngOnInit() { |
|
|
|
this.userService.getUserProfile().then((data: any) => { |
|
|
|
let bookmarked_articles: Array<string> = data.bookmarked_articles; |
|
|
|
this.bookmarked_articles = []; |
|
|
|
|
|
|
|
for (let i = 0; i < bookmarked_articles.length; i += 1) { |
|
|
|
|
|
|
|
this.newsService.getArticleDetails(bookmarked_articles[i]).then((info: any) => { |
|
|
|
|
|
|
|
if (this.platform.is('android') || this.platform.is('capacitor')) { |
|
|
|
this.bookmarked_articles.push({ |
|
|
|
title: JSON.parse(info.data)['content'].data.short_title ? JSON.parse(info.data)['content'].data.short_title : JSON.parse(info.data)['content'].data.asset_title, |
|
|
|
alias: bookmarked_articles[i], |
|
|
|
image: this.image_url + JSON.parse(info.data)['content'].data.image_path + JSON.parse(info.data)['content'].data.image_file_name, |
|
|
|
type: this.getType(JSON.parse(info.data)['EntityData'].entities[0].ent_display_name) |
|
|
|
}); |
|
|
|
|
|
|
|
} else { |
|
|
|
this.bookmarked_articles.push({ |
|
|
|
title: info.content.data.short_title ? info.content.data.short_title : info.content.data.asset_title, |
|
|
|
alias: bookmarked_articles[i], |
|
|
|
image: this.image_url + info.content.data.image_path + info.content.data.image_file_name, |
|
|
|
type: this.getType(info.EntityData.entities[0].ent_display_name) |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}, (e) => { |
|
|
|
// alert(JSON.stringify(e)); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
}, () => { |
|
|
|
this.bookmarked_articles = []; |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
} |