1; (function (ng) { 2 'use strict'; 3 4 var productViewService = function ($http, $q, $cookies, $window) { 5 var service = this, 6 productViewTransformers = {}, 7 queue = {}, 8 callbacks = {}; 9 10 service.getPhotos = function (productId) { 11 return $http.get('product/getphotos', { params: { productId: productId, rnd: Math.random() } }).then(function (response) { 12 return response.data; 13 }); 14 }; 15 16 service.getView = function (name) { 17 18 var defer = $q.defer(); 19 20 if (productViewTransformers[name] == null) { 21 queue[name] = defer; 22 } else { 23 defer.resolve(productViewTransformers[name]); 24 } 25 26 return defer.promise.finally(function () { 27 delete queue[name]; 28 }); 29 }; 30 31 service.addCallback = function (name, func) { 32 callbacks[name] = callbacks[name] || []; 33 callbacks[name].push(func); 34 }; 35 36 service.pricessCallback = function (name, data) { 37 if (callbacks[name] != null) { 38 for (var i = 0, len = callbacks[name].length - 1; i <= len; i++) { 39 callbacks[name][i](data); 40 } 41 } 42 }; 43 44 service.setView = function (name, view) { 45 46 if ($window.location.pathname.indexOf('/search') != -1) { 47 $cookies.put('search_viewmode', view); 48 } else { 49 $cookies.put('viewmode', view); 50 $cookies.put('mobile_viewmode', view); 51 } 52 53 productViewTransformers[name] = productViewTransformers[name] || {}; 54 55 productViewTransformers[name].viewName = view; 56 57 if (queue[name] != null) { 58 queue[name].resolve(productViewTransformers[name]); 59 } 60 61 service.pricessCallback('setView', productViewTransformers[name]); 62 63 return productViewTransformers[name]; 64 }; 65 }; 66 67 ng.module('productView') 68 .service('productViewService', productViewService); 69 70 productViewService.$inject = ['$http', '$q', '$cookies', '$window']; 71 72})(window.angular);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.