summaryrefslogtreecommitdiff
path: root/www/js
diff options
context:
space:
mode:
Diffstat (limited to 'www/js')
-rw-r--r--www/js/MomentCtrl.js47
1 files changed, 29 insertions, 18 deletions
diff --git a/www/js/MomentCtrl.js b/www/js/MomentCtrl.js
index 2c5f867e..39d4f0e1 100644
--- a/www/js/MomentCtrl.js
+++ b/www/js/MomentCtrl.js
@@ -221,33 +221,44 @@ angular.module('zmApp.controllers').controller('zmApp.MomentCtrl', ['$scope', '$
};
- $scope.toggleCollapse = function (mid, eid) {
- NVRDataModel.debug("toggling collapse for:" + mid);
- var collapseCount = 0;
- collapseId = 0;
- for (var i = 0; i < $scope.moments.length; i++) {
- if ($scope.moments[i].Event.Id == eid) {
-
- $scope.moments[i].Event.hide = false;
- collapseId = i;
-
- $scope.moments[i].Event.icon = $scope.moments[i].Event.icon == "ion-code-working" ? "ion-images" : "ion-code-working";
+// When a user taps on collapse on an eid,
+// all events after that for the same monitor should be collapsed
+// events before that should remain
+// when a user expands back on an eid, all eids after that for the
+// same monitor should expand, even if they were grouped earlier
+ $scope.toggleCollapse = function (mid, eid, ndx) {
+ NVRDataModel.debug("toggling collapse for:" + mid);
+ var collapseCount = 0;
+ var hide = false;
+
- } else if ($scope.moments[i].Event.MonitorId == mid) {
- // same monitor, but different ID
+ $scope.moments[ndx].Event.hide = false;
+ if ($scope.moments[ndx].Event.icon == 'ion-code-working') {
+ // we want to hide
+ hide = true;
+ $scope.moments[ndx].Event.icon = 'ion-images';
+ }
+ else { // we want to show
+ hide = false;
+ $scope.moments[ndx].Event.icon = 'ion-code-working';
+ }
- $scope.moments[i].Event.hide = !$scope.moments[i].Event.hide;
- if ($scope.moments[i].Event.hide) collapseCount++;
+ for (var i = ndx+1; i < $scope.moments.length; i++ ) {
+ if ($scope.moments[i].Event.MonitorId == mid) {
+ $scope.moments[i].Event.hide = hide;
+ $scope.moments[i].Event.icon = "ion-code-working";
+ $scope.moments[i].Event.collapseCount = "";
+ if (hide) collapseCount++;
//console.log ("Hiding " + i);
}
} //for
- if (collapseCount) {
- $scope.moments[collapseId].Event.collapseCount = collapseCount;
+ if (hide) {
+ $scope.moments[ndx].Event.collapseCount = collapseCount;
} else {
- $scope.moments[collapseId].Event.collapseCount = "";
+ $scope.moments[ndx].Event.collapseCount = "";
}