summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorPliable Pixels <pliablepixels@gmail.com>2018-05-04 13:43:21 -0400
committerPliable Pixels <pliablepixels@gmail.com>2018-05-04 13:43:21 -0400
commitd1cad20e13e8f9485d7032e9ae21e958eec1f6fa (patch)
tree0c630c6adeb581c204a9aa96bd2662c742dd71ad /www
parent6325eb356890e8bdc15ce958e8b0436ce65a8906 (diff)
#546 you now can delete with the trash icon
Diffstat (limited to 'www')
-rw-r--r--www/js/EventCtrl.js26
-rw-r--r--www/js/EventModalCtrl.js73
-rw-r--r--www/templates/events-modal.html7
3 files changed, 101 insertions, 5 deletions
diff --git a/www/js/EventCtrl.js b/www/js/EventCtrl.js
index 5be5226a..be9e0665 100644
--- a/www/js/EventCtrl.js
+++ b/www/js/EventCtrl.js
@@ -171,6 +171,8 @@ angular.module('zmApp.controllers')
//console.log ("********* BEFORE ENTER");
//
+ $scope.modalData = {"doRefresh":false};
+
$scope.footerState = ionPullUpFooterState.MINIMIZED;
$scope.gifshotSupported = true;
document.addEventListener("pause", onPause, false);
@@ -1843,8 +1845,15 @@ angular.module('zmApp.controllers')
// Takes care of deleting individual events
//--------------------------------------------------------------------------
+
+
$scope.deleteEvent = function(id, itemid)
{
+ deleteEvent(id,itemid);
+
+ };
+
+ function deleteEvent (id,itemid) {
//$scope.eventList.showDelete = false;
//curl -XDELETE http://server/zm/api/events/1.json
var loginData = NVRDataModel.getLogin();
@@ -1861,7 +1870,7 @@ angular.module('zmApp.controllers')
- $http.delete(apiDelete)
+ return $http.delete(apiDelete)
.success(function(data)
{
$ionicLoading.hide();
@@ -1880,14 +1889,14 @@ angular.module('zmApp.controllers')
else
{
-
+ $ionicLoading.hide();
$ionicLoading.show(
{
template: "{{'kSuccess' | translate}}...",
noBackdrop: true,
duration: 1000
});
- $scope.events.splice(itemid, 1);
+ if (itemid > 0) $scope.events.splice(itemid, 1);
}
@@ -1905,8 +1914,7 @@ angular.module('zmApp.controllers')
NVRDataModel.debug("delete error: " + JSON.stringify(data));
NVRDataModel.displayBanner('error', [$translate.instant('kDeleteEventError1'), $translate.instant('kDeleteEventError2')]);
});
-
- };
+ }
//------------------------------------------------
// Tapping on the filter sign lets you reset it
@@ -2908,6 +2916,8 @@ angular.module('zmApp.controllers')
mycarouselWatcher();
//NVRDataModel.debug("EventCtrl: Open Modal with Base path " + relativepath);
+ $scope.modalData = {"doRefresh":false};
+
$scope.event = event;
NVRDataModel.setAwake(NVRDataModel.getKeepAwake());
@@ -2954,6 +2964,12 @@ angular.module('zmApp.controllers')
{
$scope.modal.remove();
}
+ if ($scope.modalData.doRefresh) {
+ $scope.modalData.doRefresh = false;
+ NVRDataModel.debug ("Reloading events since we deleted some...");
+ doRefresh();
+ }
+
};
diff --git a/www/js/EventModalCtrl.js b/www/js/EventModalCtrl.js
index 0f56b488..6e42cfd6 100644
--- a/www/js/EventModalCtrl.js
+++ b/www/js/EventModalCtrl.js
@@ -1452,6 +1452,79 @@ angular.module('zmApp.controllers').controller('EventModalCtrl', ['$scope', '$ro
};
+
+
+ $scope.deleteAndMoveNext = function (id) {
+ NVRDataModel.debug ("Delete and move next called with: "+id);
+ deleteEvent(id)
+ .then (function (succ) {
+ $ionicLoading.hide();
+ $scope.modalData.doRefresh = true;
+ jumpToEvent(id,1);
+
+ })
+ };
+
+ function deleteEvent (id) {
+ //$scope.eventList.showDelete = false;
+ //curl -XDELETE http://server/zm/api/events/1.json
+ var loginData = NVRDataModel.getLogin();
+ var apiDelete = loginData.apiurl + "/events/" + id + ".json";
+ NVRDataModel.debug("DeleteEvent: ID=" + id );
+ NVRDataModel.log("Delete event " + apiDelete);
+
+ $ionicLoading.show(
+ {
+ template: "{{'kDeletingEvent' | translate}}...",
+ noBackdrop: true,
+ duration: zm.httpTimeout
+ });
+
+ return $http.delete(apiDelete)
+ .success(function(data)
+ {
+ $ionicLoading.hide();
+ NVRDataModel.debug("delete output: " + JSON.stringify(data));
+
+ if (data.message == 'Error')
+ {
+ $ionicLoading.show(
+ {
+ template: "{{'kError' | translate}}...",
+ noBackdrop: true,
+ duration: 1500
+ });
+
+ }
+ else
+ {
+
+ $ionicLoading.hide();
+ $ionicLoading.show(
+ {
+ template: "{{'kSuccess' | translate}}...",
+ noBackdrop: true,
+ duration: 1000
+ });
+
+
+ }
+
+ // NVRDataModel.displayBanner('info', [$translate.instant('kDeleteEventSuccess')], 2000, 2000);
+
+
+
+
+ //doRefresh();
+
+ })
+ .error(function(data)
+ {
+ $ionicLoading.hide();
+ NVRDataModel.debug("delete error: " + JSON.stringify(data));
+ NVRDataModel.displayBanner('error', [$translate.instant('kDeleteEventError1'), $translate.instant('kDeleteEventError2')]);
+ });
+ }
//--------------------------------------------------------
//Navigate to next/prev event in full screen mode
//--------------------------------------------------------
diff --git a/www/templates/events-modal.html b/www/templates/events-modal.html
index fdfce46d..0664dbba 100644
--- a/www/templates/events-modal.html
+++ b/www/templates/events-modal.html
@@ -136,6 +136,13 @@
<li ng-if="$root.isAlarm">
<a data-badge="{{$root.alarmCount}}" class="notification-badge animated infinite tada" href="" ng-click="handleAlarms()"><i class="ion-ios-bell"></i></a>
</li>
+
+ <li>
+ <a href="" ng-click="deleteAndMoveNext(eventId)"><i class="ion-trash-a"></i></a>
+ </li>
+
+
+
</ul>
</div>
</div> <!-- not live feed or snapshot -->