UNPKG

consumerportal

Version:

mydna Custimised for you

60 lines (50 loc) 1.81 kB
/// <reference path="../../includes.ts" /> module app { import IUser = services.IUser; import CartItem = services.CartItem; class MarketplaceController { static $inject = [ '$scope', 'authenSrvc', 'userService', 'cartService' ]; public selected: any; public loaded: boolean = false; public user: IUser; public items: CartItem[]; public cartItems: string[]; constructor( $scope: angular.IScope, authenSrvc: authenSrvc.IAuthenService, userService: services.IUserService, private cartService: services.ICartService ) { userService.user().then((user: IUser) => { this.user = user; }); $scope.$on('cartUpdated', (ev: any, cartItems: CartItem[]) => { (this.items || []).forEach((item: CartItem) => { if (item.state !== 'owned') { item.state = cartItems.map((ci: CartItem) => { return ci.key }).indexOf(item.key) > -1 ? 'cart' : null; } }); }); cartService.getReports().then((items: CartItem[]) => { this.items = items; }) } toggle(item: CartItem) { if (!item.state) { this.cartService.addItem(item); } else if (item.state === 'owned') { console.log('open report'); } else if (item.state === 'cart') { this.cartService.removeItem(item); } } } angular .module('app') .controller('marketplaceCtrl', MarketplaceController); }