-
Notifications
You must be signed in to change notification settings - Fork 0
/
mockProductsService.js
59 lines (45 loc) · 1.43 KB
/
mockProductsService.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
var mockProductsService = function ($q, $timeout) {
var service = mockService($q);
var defer = $q.defer();
var products = [];
var productsLoading = false;
var remoteProducts = {};
var remoteProductsLoading = [];
service.mockProductsLoading = function (loading) {
productsLoading = loading ? true : false;
};
service.remoteProductsLoading = function (productId, loading) {
remoteProductsLoading[productId] = loading ? true : false;
};
service.refreshProducts = function () {
productsLoading = false;
return messagePromise($q.defer());
};
service.refreshRemoteProducts = function (productId) {
remoteProductsLoading[productId] = false;
if (dataFeatureRequest1.id == productId) {
return notifyPromise($timeout, $q.defer(), dataFeatureRequest1);
}
return rejectPromise($q.defer());
};
service.getProductsLoading = function () {
return productsLoading;
};
service.getRemoteProducts = function () {
return remoteProducts;
};
service.getRemoteProductsLoading = function () {
return remoteProductsLoading;
};
service.getRemoteProductInfo = function (productId) {
for (var i in products) {
if (products[i].id == productId) {
return products[i].remoteProductInfo;
}
}
};
service.ready = defer.promise;
defer.notify();
return service;
};
angular.module("mock.productsService", []).service("ProductsService", mockProductsService);