summaryrefslogtreecommitdiff
path: root/www/js/TimelineCtrl.js
diff options
context:
space:
mode:
authorPliable Pixels <pliablepixels@gmail.com>2016-09-04 08:21:23 -0400
committerPliable Pixels <pliablepixels@gmail.com>2016-09-04 08:21:23 -0400
commit3e011566d57ada671534906cd080ad59294f0b53 (patch)
tree423c4fab99577ba73e4e299494b026a9befbfe08 /www/js/TimelineCtrl.js
parenta3715e410eae6078e416ccdae3ae9ba36265e619 (diff)
#318 - ZM<->NVR
Former-commit-id: 36a54d3203893c7b240ba458a927b259cb6b5141
Diffstat (limited to 'www/js/TimelineCtrl.js')
-rw-r--r--www/js/TimelineCtrl.js138
1 files changed, 69 insertions, 69 deletions
diff --git a/www/js/TimelineCtrl.js b/www/js/TimelineCtrl.js
index 9362a7d1..b7624c1b 100644
--- a/www/js/TimelineCtrl.js
+++ b/www/js/TimelineCtrl.js
@@ -13,7 +13,7 @@
// FIXME: too much redundant code between EventCtrl and Timeline
// Move to ModalCtrl and see if it works
-angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPlatform', '$scope', 'zm', 'ZMDataModel', '$ionicSideMenuDelegate', '$rootScope', '$http', '$q', 'message', '$state', '$ionicLoading', '$ionicPopover', '$ionicScrollDelegate', '$ionicModal', '$timeout', '$ionicContentBanner', '$ionicHistory', '$sce', '$stateParams', '$translate', function ($ionicPlatform, $scope, zm, ZMDataModel, $ionicSideMenuDelegate, $rootScope, $http, $q, message, $state, $ionicLoading, $ionicPopover, $ionicScrollDelegate, $ionicModal, $timeout, $ionicContentBanner, $ionicHistory, $sce, $stateParams, $translate) {
+angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPlatform', '$scope', 'zm', 'NVRDataModel', '$ionicSideMenuDelegate', '$rootScope', '$http', '$q', 'message', '$state', '$ionicLoading', '$ionicPopover', '$ionicScrollDelegate', '$ionicModal', '$timeout', '$ionicContentBanner', '$ionicHistory', '$sce', '$stateParams', '$translate', function ($ionicPlatform, $scope, zm, NVRDataModel, $ionicSideMenuDelegate, $rootScope, $http, $q, message, $state, $ionicLoading, $ionicPopover, $ionicScrollDelegate, $ionicModal, $timeout, $ionicContentBanner, $ionicHistory, $sce, $stateParams, $translate) {
//console.log("Inside Timeline controller");
$scope.openMenu = function () {
@@ -49,7 +49,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// Used to display date range for timeline
//-----------------------------------------------------------
$scope.prettify = function (str) {
- return moment(str).format('MMMM Do YYYY, ' + ZMDataModel.getTimeFormat());
+ return moment(str).format('MMMM Do YYYY, ' + NVRDataModel.getTimeFormat());
};
//-----------------------------------------------------------
@@ -68,10 +68,10 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$scope.toggleMinAlarmFrameCount = function () {
// console.log("Toggling");
- var ld = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
ld.enableAlarmCount = !ld.enableAlarmCount;
- ZMDataModel.setLogin(ld);
+ NVRDataModel.setLogin(ld);
drawGraph(curFromDate, curToDate, curCount);
@@ -131,7 +131,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$scope.fromDate = fromDate;
$scope.toDate = toDate;
$rootScope.customTimelineRange = false;
- ZMDataModel.zmLog("moving by " + d + " day to " + fromDate + " upto " + toDate);
+ NVRDataModel.log("moving by " + d + " day to " + fromDate + " upto " + toDate);
drawGraph(fromDate, toDate, maxItems);
};
@@ -167,11 +167,11 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
if ($scope.modalFromTimelineIsOpen == true) {
// don't know why but some conflict from angular to timeline lib
// results in double modals at times
- ZMDataModel.zmLog(">>-- duplicate modal detected, preventing");
+ NVRDataModel.log(">>-- duplicate modal detected, preventing");
}
$scope.modalFromTimelineIsOpen = true;
- ZMDataModel.setAwake(ZMDataModel.getKeepAwake());
+ NVRDataModel.setAwake(NVRDataModel.getKeepAwake());
// pass this event to ModalCtrl
$scope.currentEvent = event;
@@ -199,7 +199,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$scope.modal.show();
- var ld = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
@@ -215,9 +215,9 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$scope.modalFromTimelineIsOpen = false;
// $interval.cancel(eventsInterval);
//$interval.cancel(segmentHandle);
- ZMDataModel.zmDebug("TimelineCtrl:Close & Destroy Modal");
- ZMDataModel.stopNetwork("TimelineCtrl: closeModal");
- ZMDataModel.setAwake(false);
+ NVRDataModel.debug("TimelineCtrl:Close & Destroy Modal");
+ NVRDataModel.stopNetwork("TimelineCtrl: closeModal");
+ NVRDataModel.setAwake(false);
if ($scope.modal !== undefined) {
$scope.modal.remove();
}
@@ -228,7 +228,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
{
console.log ("GAPLESS TOGGLE");
$scope.loginData.gapless = !$scope.loginData.gapless;
- ZMDataModel.setLogin($scope.loginData);
+ NVRDataModel.setLogin($scope.loginData);
};*/
@@ -237,7 +237,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// called when user switches to background
//-------------------------------------------------------------------------
function onPause() {
- ZMDataModel.zmDebug("TimelineCtrl:onpause called");
+ NVRDataModel.debug("TimelineCtrl:onpause called");
// console.log("*** Moving to Background ***"); // Handle the pause event
if ($scope.popover) $scope.popover.remove();
@@ -282,17 +282,17 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// Make sure sliding for menu is disabled so it
// does not interfere with graph panning
$ionicSideMenuDelegate.canDragContent(false);
- var ld = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
maxItemsConf = ($rootScope.platformOS == 'desktop') ? zm.graphDesktopItemMax : zm.graphItemMax;
maxItems = ld.graphSize || maxItemsConf;
- ZMDataModel.zmLog("Graph items to draw is " + maxItems);
+ NVRDataModel.log("Graph items to draw is " + maxItems);
$scope.maxItems = maxItems;
$scope.translationData = {
maxItemsVal: maxItems
};
$scope.graphLoaded = false;
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph: graphLoaded is " + $scope.graphLoaded);
+ NVRDataModel.debug("TimelineCtrl/drawGraph: graphLoaded is " + $scope.graphLoaded);
});
//-------------------------------------------------
@@ -311,11 +311,11 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
var tempMon = message;
//console.log ("TIMELINE MONITORS: " + JSON.stringify(message));
- var ld = ZMDataModel.getLogin();
- $scope.loginData = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
+ $scope.loginData = NVRDataModel.getLogin();
if (ld.persistMontageOrder) {
- var iMon = ZMDataModel.applyMontageMonitorPrefs(tempMon, 2);
+ var iMon = NVRDataModel.applyMontageMonitorPrefs(tempMon, 2);
$scope.monitors = iMon[0];
} else
$scope.monitors = message;
@@ -352,11 +352,11 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
e.preventDefault();
if ($scope.modal != undefined && $scope.modal.isShown()) {
// switch off awake, as liveview is finished
- ZMDataModel.zmDebug("Modal is open, closing it");
- ZMDataModel.setAwake(false);
+ NVRDataModel.debug("Modal is open, closing it");
+ NVRDataModel.setAwake(false);
$scope.modal.remove();
} else {
- ZMDataModel.zmDebug("Modal is closed, so toggling or exiting");
+ NVRDataModel.debug("Modal is closed, so toggling or exiting");
if (!$ionicSideMenuDelegate.isOpenLeft()) {
$ionicSideMenuDelegate.toggleLeft();
@@ -388,7 +388,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
document.addEventListener("pause", onPause, false);
// FIXME: Timeline awake to avoid graph redrawing
- ZMDataModel.setAwake(ZMDataModel.getKeepAwake());
+ NVRDataModel.setAwake(NVRDataModel.getKeepAwake());
@@ -409,7 +409,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// maxItems will be ignored during timeline draw if its desktop
var maxItemsConf;
- var ld = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
var maxItems;
@@ -477,7 +477,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
//console.log (index);
if (index == 0) //month
{
- ZMDataModel.zmLog("Month view");
+ NVRDataModel.log("Month view");
$rootScope.customTimelineRange = false;
toDate = moment().format("YYYY-MM-DD HH:mm:ss");
@@ -488,7 +488,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
} else if (index == 1) //week
{
$rootScope.customTimelineRange = false;
- ZMDataModel.zmLog("Week view");
+ NVRDataModel.log("Week view");
toDate = moment().format("YYYY-MM-DD HH:mm:ss");
fromDate = moment().subtract(1, 'week').startOf('day').format("YYYY-MM-DD HH:mm:ss");
$scope.fromDate = fromDate;
@@ -497,7 +497,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
} else if (index == 2) //day
{
$rootScope.customTimelineRange = false;
- ZMDataModel.zmLog("Day view");
+ NVRDataModel.log("Day view");
toDate = moment().format("YYYY-MM-DD HH:mm:ss");
fromDate = moment().subtract(1, 'day').startOf('day').format("YYYY-MM-DD HH:mm:ss");
$scope.fromDate = fromDate;
@@ -537,12 +537,12 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
duration: zm.loadingTimeout, //specifically for Android - http seems to get stuck at times
});
- ZMDataModel.zmLog("TimelineCtrl/drawgraph: from->" + fromDate + " to->" + toDate + " count:" + count);
+ NVRDataModel.log("TimelineCtrl/drawgraph: from->" + fromDate + " to->" + toDate + " count:" + count);
$scope.graphLoaded = false;
- ZMDataModel.zmDebug("TimelineCtrl/drawgraph: graphLoaded:" + $scope.graphLoaded);
+ NVRDataModel.debug("TimelineCtrl/drawgraph: graphLoaded:" + $scope.graphLoaded);
if (timeline) {
- ZMDataModel.zmDebug("TimelineCtrl/drawgraph: destroying timeline as it exists");
+ NVRDataModel.debug("TimelineCtrl/drawgraph: destroying timeline as it exists");
timeline.destroy();
}
@@ -568,12 +568,12 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
stack: false,
format: {
minorLabels: {
- minute: ZMDataModel.getTimeFormat(),
- hour: ZMDataModel.getTimeFormat(),
+ minute: NVRDataModel.getTimeFormat(),
+ hour: NVRDataModel.getTimeFormat(),
second: 's',
},
majorLabels: {
- second: "D MMM " + ZMDataModel.getTimeFormat(),
+ second: "D MMM " + NVRDataModel.getTimeFormat(),
}
},
@@ -581,7 +581,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
var graphIndex = 1; // will be used for graph ID
- ZMDataModel.getEventsPages(0, fromDate, toDate)
+ NVRDataModel.getEventsPages(0, fromDate, toDate)
.then(function (data) {
var pages = parseInt(data.pageCount);
var itemsPerPage = parseInt(data.limit);
@@ -589,15 +589,15 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// So iterCount is the # of HTTP calls I need to make
iterCount = Math.max(Math.round(count / itemsPerPage), 1);
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph: pages of data: " + pages + " items per page: " + itemsPerPage);
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph: I will make " + iterCount + " HTTP Requests to get all graph data");
+ NVRDataModel.debug("TimelineCtrl/drawGraph: pages of data: " + pages + " items per page: " + itemsPerPage);
+ NVRDataModel.debug("TimelineCtrl/drawGraph: I will make " + iterCount + " HTTP Requests to get all graph data");
// I've restructured this part. I was initially using vis DataSets
// for dynamic binding which was easier, but due to performance reasons
// I am waiting for the full data to load before I draw
var promises = [];
while ((pages > 0) && (iterCount > 0)) {
- var promise = ZMDataModel.getEvents(0, pages, "none", fromDate, toDate);
+ var promise = NVRDataModel.getEvents(0, pages, "none", fromDate, toDate);
promises.push(promise);
pages--;
iterCount--;
@@ -606,19 +606,19 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$q.all(promises)
.then(function (data) {
- ZMDataModel.zmDebug("TimelineCtrl/drawgraph: all pages of graph data received");
+ NVRDataModel.debug("TimelineCtrl/drawgraph: all pages of graph data received");
graphIndex = 0;
- ZMDataModel.zmLog("Creating " + $scope.monitors.length + " groups for the graph");
+ NVRDataModel.log("Creating " + $scope.monitors.length + " groups for the graph");
// create groups
for (var g = 0; g < $scope.monitors.length; g++) {
groups.add({
id: $scope.monitors[g].Monitor.Id,
//mid: $scope.monitors[g].Monitor.Id,
- content: ZMDataModel.getMonitorName($scope.monitors[g].Monitor.Id),
+ content: NVRDataModel.getMonitorName($scope.monitors[g].Monitor.Id),
order: $scope.monitors[g].Monitor.Sequence
});
- ZMDataModel.zmDebug("TimelineCtrl/drawgraph:Adding group " +
- ZMDataModel.getMonitorName($scope.monitors[g].Monitor.Id));
+ NVRDataModel.debug("TimelineCtrl/drawgraph:Adding group " +
+ NVRDataModel.getMonitorName($scope.monitors[g].Monitor.Id));
}
@@ -627,7 +627,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
var myevents = data[j];
if (graphIndex > count) {
- ZMDataModel.zmLog("Exiting page count graph - reached limit of " + count);
+ NVRDataModel.log("Exiting page count graph - reached limit of " + count);
break;
}
@@ -636,7 +636,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
// make sure group id exists before adding
var idfound = true;
- var ld = ZMDataModel.getLogin();
+ var ld = NVRDataModel.getLogin();
if (ld.persistMontageOrder) {
@@ -651,15 +651,15 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
}
}
- myevents[i].Event.MonitorName = ZMDataModel.getMonitorName(myevents[i].Event.MonitorId);
+ myevents[i].Event.MonitorName = NVRDataModel.getMonitorName(myevents[i].Event.MonitorId);
// now construct base path
- myevents[i].Event.streamingURL = ZMDataModel.getStreamingURL(myevents[i].Event.MonitorId);
- myevents[i].Event.baseURL = ZMDataModel.getBaseURL(myevents[i].Event.MonitorId);
- myevents[i].Event.imageMode = ZMDataModel.getImageMode(myevents[i].Event.MonitorId);
- if (ZMDataModel.getLogin().url != myevents[i].Event.baseURL) {
- //ZMDataModel.zmDebug ("Multi server, changing base");
- myevents[i].Event.baseURL = ZMDataModel.getLogin().url;
+ myevents[i].Event.streamingURL = NVRDataModel.getStreamingURL(myevents[i].Event.MonitorId);
+ myevents[i].Event.baseURL = NVRDataModel.getBaseURL(myevents[i].Event.MonitorId);
+ myevents[i].Event.imageMode = NVRDataModel.getImageMode(myevents[i].Event.MonitorId);
+ if (NVRDataModel.getLogin().url != myevents[i].Event.baseURL) {
+ //NVRDataModel.debug ("Multi server, changing base");
+ myevents[i].Event.baseURL = NVRDataModel.getLogin().url;
}
// console.log ("***** MULTISERVER STREAMING URL FOR EVENTS " + myevents[i].Event.streamingURL);
@@ -699,7 +699,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
if (graphIndex > count) {
- ZMDataModel.zmLog("Exiting event graph - reached limit of " + count);
+ NVRDataModel.log("Exiting event graph - reached limit of " + count);
break;
}
@@ -717,7 +717,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
$ionicLoading.hide();
$scope.graphLoaded = true;
- ZMDataModel.zmDebug("graph loaded: " + $scope.graphLoaded);
+ NVRDataModel.debug("graph loaded: " + $scope.graphLoaded);
$scope.navControls = false;
var dblclick = false;
@@ -742,17 +742,17 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
var itm = prop.item;
//console.log ("ITEM CLICKED " + itm);
if (itm && !isNaN(itm)) {
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph:You clicked on item " + itm);
+ NVRDataModel.debug("TimelineCtrl/drawGraph:You clicked on item " + itm);
var item = graphData.get(itm);
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph: clicked item details:" + JSON.stringify(item));
+ NVRDataModel.debug("TimelineCtrl/drawGraph: clicked item details:" + JSON.stringify(item));
showEvent(item.myevent);
} else {
- ZMDataModel.zmDebug("exact match not found, guessing item with co-ordinates X=" + prop.x + " group=" + prop.group);
+ NVRDataModel.debug("exact match not found, guessing item with co-ordinates X=" + prop.x + " group=" + prop.group);
if (prop.group) {
var visible = timeline.getVisibleItems();
- ZMDataModel.zmDebug("Visible items=" + JSON.stringify(visible));
+ NVRDataModel.debug("Visible items=" + JSON.stringify(visible));
var closestItem = null;
var minDist = 99999;
var _item;
@@ -762,7 +762,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
if (Math.abs(_item.left - prop.x) < minDist) {
closestItem = _item;
minDist = Math.abs(_item.left - prop.x);
- ZMDataModel.zmDebug("Temporary closest " + _item.left);
+ NVRDataModel.debug("Temporary closest " + _item.left);
//console.log (_item);
}
}
@@ -770,10 +770,10 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
}
if (closestItem != null) {
- ZMDataModel.zmLog("Closest item " + closestItem.left + " group: " + closestItem.data.group);
+ NVRDataModel.log("Closest item " + closestItem.left + " group: " + closestItem.data.group);
showEvent(closestItem.data.myevent);
} else {
- ZMDataModel.zmLog("Did not find a visible item match");
+ NVRDataModel.log("Did not find a visible item match");
}
} else // no group row tapped, do nothing
{
@@ -799,18 +799,18 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
var itm = prop.item;
//console.log ("ITEM CLICKED " + itm);
if (itm && !isNaN(itm)) {
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph:You clicked on item " + itm);
+ NVRDataModel.debug("TimelineCtrl/drawGraph:You clicked on item " + itm);
var item = graphData.get(itm);
- ZMDataModel.zmDebug("TimelineCtrl/drawGraph: clicked item details:" + JSON.stringify(item));
+ NVRDataModel.debug("TimelineCtrl/drawGraph: clicked item details:" + JSON.stringify(item));
eventDetails(item.myevent);
} else {
- ZMDataModel.zmDebug("exact match not found, guessing item with co-ordinates X=" + prop.x + " group=" + prop.group);
+ NVRDataModel.debug("exact match not found, guessing item with co-ordinates X=" + prop.x + " group=" + prop.group);
if (prop.group) {
var visible = timeline.getVisibleItems();
- ZMDataModel.zmDebug("Visible items=" + JSON.stringify(visible));
+ NVRDataModel.debug("Visible items=" + JSON.stringify(visible));
var closestItem = null;
var minDist = 99999;
var _item;
@@ -820,18 +820,18 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
if (Math.abs(_item.left - prop.x) < minDist) {
closestItem = _item;
minDist = Math.abs(_item.left - prop.x);
- ZMDataModel.zmDebug("Temporary closest " + _item.left);
+ NVRDataModel.debug("Temporary closest " + _item.left);
//console.log (_item);
}
}
}
- ZMDataModel.zmLog("Closest item " + closestItem.left + " group: " + closestItem.data.group);
+ NVRDataModel.log("Closest item " + closestItem.left + " group: " + closestItem.data.group);
if (closestItem != null) {
- ZMDataModel.zmLog("Closest item " + closestItem.left + " group: " + closestItem.data.group);
+ NVRDataModel.log("Closest item " + closestItem.left + " group: " + closestItem.data.group);
showEvent(closestItem.data.myevent);
} else {
- ZMDataModel.zmLog("Did not find a visible item match");
+ NVRDataModel.log("Did not find a visible item match");
}
}
@@ -841,7 +841,7 @@ angular.module('zmApp.controllers').controller('zmApp.TimelineCtrl', ['$ionicPla
});
},
function (error) {
- ZMDataModel.displayBanner('error', 'Timeline error', 'Please try again');
+ NVRDataModel.displayBanner('error', 'Timeline error', 'Please try again');
}