Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Component } from '@angular/core';
- import { IonicPage, NavController, NavParams, ModalController, Platform, Loading } from 'ionic-angular';
- import { AppSetting } from '../../app/app.settings';
- import { PlayListProvider } from '../../providers/play-list/playlist-provider';
- import { PlayList } from '../../models/PlayList';
- import { LoadingProvider } from '../../providers/loading/loading';
- import { forEach } from 'lodash';
- import { MediaItem } from '../../models/media-item';
- @IonicPage()
- @Component({
- selector: 'page-playlists',
- templateUrl: 'playlists.html',
- })
- export class PlaylistsPage {
- data: PlayList[] = []; type: string = "my"; mediaItem: MediaItem; newPlayListId: number;
- constructor(public navCtrl: NavController, public navParams: NavParams, public appSettings: AppSetting, public platform: Platform,
- private modalCtrl: ModalController, private playListProvider: PlayListProvider, private loadingProvider: LoadingProvider) {
- this.init();
- this.playListProvider.playlistUpdates.subscribe((set) => {
- if(set){
- console.log("hitUpdates");
- const loading = this.loadingProvider.presentLoader();
- this.getDistributorPlaylists(loading);
- }
- })
- }
- init() {
- this.platform.ready().then(() => {
- this.appSettings.initTranslateService();
- });
- }
- ionViewDidEnter() {
- const loading = this.loadingProvider.presentLoader();
- if(typeof this.navParams.get('type') !== "undefined"){
- this.type = this.navParams.get('type');
- }
- if (this.type == "my") {
- this.getDistributorPlaylists(loading);
- } else {
- this.getCorporatePlaylists(loading);
- }
- }
- //get Corporate Play lists
- getCorporatePlaylists(loading: Loading) {
- this.playListProvider.getCorporatePlaylists().subscribe(
- result => {
- this.setData(result);
- this.loadingProvider.dismissLoader(loading);
- },
- error => { this.loadingProvider.dismissLoader(loading); },
- () => { }
- );
- }
- //get Distributor Play lists
- getDistributorPlaylists(loading: Loading) {
- this.playListProvider.getDistributorPlaylists().subscribe(
- result => {
- this.setData(result);
- this.loadingProvider.dismissLoader(loading);
- },
- error => { this.loadingProvider.dismissLoader(loading); },
- () => { }
- );
- }
- //add Playlist
- addPlaylist() {
- const modal = this.modalCtrl.create('NewPlaylistPage');
- modal.onDidDismiss(data => {
- });
- modal.present();
- }
- //play List Changed
- playListChanged() {
- const loading = this.loadingProvider.presentLoader();
- if (this.type == "corporate") {
- this.getCorporatePlaylists(loading);
- } else {
- this.getDistributorPlaylists(loading);
- }
- }
- //set Data
- setData(result: any): PlayList[] {
- this.data = [];
- forEach(result, (v) => {
- let image:string;
- if(v.Thumbnail){
- image = v.Thumbnail;
- }
- else{
- image = './assets/images/placeholder2';
- }
- const playList: PlayList = {
- id: v.PlayListId,
- text: v.ResourceValue,
- imageUrl: image,
- mediaItems: []
- };
- this.data.push(playList);
- });
- return this.data;
- }
- //select PlayList
- selectPlayList(event: any) {
- let data = event;
- }
- }
Add Comment
Please, Sign In to add comment