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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
/* jshint -W041 */
/* jslint browser: true*/
/* global cordova,StatusBar,angular,console */
// controller for Monitor View
// refer to comments in EventCtrl for the modal stuff. They are almost the same
angular.module('zmApp.controllers').controller('zmApp.MonitorCtrl', ['$ionicPopup', '$scope', 'ZMDataModel', 'message', '$ionicSideMenuDelegate', '$ionicLoading', '$ionicModal', '$state', '$http', function ($ionicPopup,$scope, ZMDataModel, message, $ionicSideMenuDelegate, $ionicLoading, $ionicModal, $state, $http, $rootScope) {
$scope.monitors = [];
$scope.openMenu = function () {
$ionicSideMenuDelegate.toggleLeft();
};
$scope.reloadView = function () {
console.log("*** Refreshing Modal view ***");
$scope.rand = Math.floor(Math.random() * (999999 - 111111 + 1)) + 111111;
$ionicLoading.show({
template: "refreshed view",
noBackdrop: true,
duration: 2000
});
};
$scope.notSupported = function()
{
$ionicPopup.alert({
title: 'In a Galaxy Far Far Away...',
template: 'This feature will be supported sometime in the future.'
});
};
$scope.isSimulated = function () {
return ZMDataModel.isSimulated();
};
// same logic as EventCtrl.js
$scope.finishedLoadingImage = function () {
console.log("***Monitor image FINISHED Loading***");
$ionicLoading.hide();
/* $ionicLoading.show({
template: "loading, please wait...",
noBackdrop: true,
});*/
};
$scope.$on('$ionicView.loaded', function () {
console.log("**VIEW ** Monitor Ctrl Loaded");
});
$scope.$on('$ionicView.enter', function () {
console.log("**VIEW ** Monitor Ctrl Entered");
});
$scope.$on('$ionicView.leave', function () {
console.log("**VIEW ** Monitor Ctrl Left");
});
$scope.$on('$ionicView.unloaded', function () {
console.log("**VIEW ** Monitor Ctrl Unloaded");
});
$scope.openModal = function (mid) {
console.log("Open Monitor Modal");
$scope.monitorId = mid;
$scope.LoginData = ZMDataModel.getLogin();
$scope.rand = Math.floor(Math.random() * (999999 - 111111 + 1)) + 111111;
// This is a modal to show the monitor footage
$ionicModal.fromTemplateUrl('templates/monitors-modal.html', {
scope: $scope,
animation: 'slide-in-up'
})
.then(function (modal) {
$scope.modal = modal;
$ionicLoading.show({
template: "please wait...",
noBackdrop: true,
duration: 15000
});
$scope.modal.show();
});
};
$scope.closeModal = function () {
console.log("Close & Destroy Monitor Modal");
$scope.modal.remove();
};
//Cleanup the modal when we're done with it!
$scope.$on('$destroy', function () {
console.log("Destroy Monitor Modal");
$scope.modal.remove();
});
console.log("***EVENTS: Waiting for Monitors to load before I proceed");
$scope.monitors = message;
$scope.doRefresh = function () {
console.log("***Pull to Refresh");
$scope.monitors = [];
var refresh = ZMDataModel.getMonitors(1);
refresh.then(function (data) {
$scope.monitors = data;
$scope.$broadcast('scroll.refreshComplete');
});
};
}]);
|