UNPKG

cobuild-angular-stack

Version:

Base stack angular sass jade gulp

57 lines (46 loc) 2.23 kB
(function (module) { 'use strict'; module.controller('GuestRegistryProductShowController', GuestRegistryProductShowController); GuestRegistryProductShowController.$inject = ['$scope', 'product', 'Store', 'Category', '$uibModalInstance', 'currencies', 'currencyConversionPromiseFilter', 'currencyFilter', 'account', 'lodash']; function GuestRegistryProductShowController($scope, product, Store, Category, $modalInstance, currencies, currencyConversion, currency, account, lodash) { $scope.product = product; $scope.account = account; $scope.productCategories = []; $scope.disabled = false; $scope.currencies = currencies; $scope.currency = lodash.find(currencies, {code: 'MXN'}); $scope.selectCurrency = function (currency) { $scope.currency = currency; }; $scope.productStore = null; $scope.stores = Store.find(); $scope.stores .$promise .then(function () { $scope.$watch('product.storeId', function (newId) { $scope.productStore = lodash.find($scope.stores, {id: newId}); }); }); $scope.categories = Category.find(); $scope.categories.$promise .then(function () { $scope.$watchCollection('product.categoriesIds', function (val) { $scope.productCategories = lodash.map(lodash.filter($scope.categories, function (category) { return $scope.product.categoriesIds.indexOf(category.id) > -1; }), 'name'); }); }); $scope.$watch('currency', function () { currencyConversion(product.price, 'MXN', $scope.currency.code).then(function (price) { product.gifted = product.received > product.qty; product.convertedPrice = currency(price, $scope.currency.symbol+' ', 2); }); }); $scope.dismiss = function () { $modalInstance.dismiss(); }; $scope.addToCart = function () { $modalInstance.close($scope.product); } } })(angular.module('uniko.guest.registry'));