summaryrefslogtreecommitdiff
path: root/www/js
diff options
context:
space:
mode:
authorPliablePixels <pliablepixels@gmail.com>2015-07-16 11:23:38 -0400
committerPliablePixels <pliablepixels@gmail.com>2015-07-16 11:23:38 -0400
commit61afc8d7011f8a741b2583708ac1834e8eec44c2 (patch)
tree436d709de6ba9e9ffd845a83c01c45ee342e8ad1 /www/js
parent82a0ec7a39ec49fb028876368014600a665f253c (diff)
moved saveImageToPhone to Modal - it was not working because button range was out of scope of modal controller range.
Diffstat (limited to 'www/js')
-rw-r--r--www/js/ModalCtrl.js85
-rw-r--r--www/js/MonitorCtrl.js70
-rw-r--r--www/js/MontageCtrl.js91
3 files changed, 83 insertions, 163 deletions
diff --git a/www/js/ModalCtrl.js b/www/js/ModalCtrl.js
index c5d1f512..01b8e27c 100644
--- a/www/js/ModalCtrl.js
+++ b/www/js/ModalCtrl.js
@@ -10,7 +10,6 @@ angular.module('zmApp.controllers').controller('ModalCtrl', ['$scope', '$rootSco
console.log("**** INSIDE MODAL CTRL, recomputing rand *****");
$scope.rand = Math.floor((Math.random() * 100000) + 1);
- $rootScope.tempmid = $scope.monitorId;
//$state.go($state.current, {}, {reload: true});
// This holds the PTZ menu control
@@ -225,12 +224,17 @@ angular.module('zmApp.controllers').controller('ModalCtrl', ['$scope', '$rootSco
};
+ $scope.saveImageToPhone2=function(mid)
+ {
+ console.log ("TEST");
+ };
+
$scope.onSwipeLeft = function(m,d)
{
console.log ("SWIPED LEFT");
console.log ("Next Monitor ID is " + ZMDataModel.getNextMonitor(m,d));
$scope.monitorId = ZMDataModel.getNextMonitor(m,d);
- $rootScope.tempmid = $scope.monitorId; //FIXME: Hack
+
$ionicLoading.hide();
$ionicLoading.show({
@@ -246,7 +250,6 @@ angular.module('zmApp.controllers').controller('ModalCtrl', ['$scope', '$rootSco
console.log ("SWIPED RIGHT");
console.log ("Next Monitor ID is " + ZMDataModel.getNextMonitor(m,d));
$scope.monitorId = ZMDataModel.getNextMonitor(m,d);
- $rootScope.tempmid = $scope.monitorId;
$ionicLoading.show({
template: "please wait...",
@@ -255,5 +258,81 @@ angular.module('zmApp.controllers').controller('ModalCtrl', ['$scope', '$rootSco
});
};
+ //-----------------------------------------------------------------------
+ // Sucess/Error handlers for saving a snapshot of the
+ // monitor image to phone storage
+ //-----------------------------------------------------------------------
+
+ function SaveSuccess() {
+ $ionicLoading.show({
+ template: "done!",
+ noBackdrop: true,
+ duration: 1000
+ });
+ console.log("***SUCCESS");
+ }
+
+ function SaveError(e) {
+ $ionicLoading.show({
+ template: "error - could not save",
+ noBackdrop: true,
+ duration: 2000
+ });
+ ZMDataModel.zmLog("Error saving image: " + e.message);
+ console.log("***ERROR");
+ }
+
+ //-----------------------------------------------------------------------
+ // Saves a snapshot of the monitor image to phone storage
+ //-----------------------------------------------------------------------
+
+
+ $scope.saveImageToPhone = function (mid) {
+ $ionicLoading.show({
+ template: "saving snapshot..",
+ noBackdrop: true,
+ duration: zm.httpTimeout
+ });
+
+ console.log("IMAGE CAPTURE INSIDE MODAL");
+ var canvas, context, imageDataUrl, imageData;
+ var loginData = ZMDataModel.getLogin();
+ var url = loginData.streamingurl +
+ '/cgi-bin/zms?mode=single&monitor=' + mid +
+ '&user=' + loginData.username +
+ '&pass=' + loginData.password;
+ ZMDataModel.zmLog("SavetoPhone:Trying to save image from " + url);
+
+ var img = new Image();
+ img.onload = function () {
+ canvas = document.createElement('canvas');
+ canvas.width = img.width;
+ canvas.height = img.height;
+ context = canvas.getContext('2d');
+ context.drawImage(img, 0, 0);
+ try {
+ imageDataUrl = canvas.toDataURL('image/jpeg', 1.0);
+ imageData = imageDataUrl.replace(/data:image\/jpeg;base64,/, '');
+ cordova.exec(
+ SaveSuccess,
+ SaveError,
+ 'Canvas2ImagePlugin',
+ 'saveImageDataToLibrary', [imageData]
+ );
+ } catch (e) {
+
+ SaveError(e.message);
+ }
+ };
+ try {
+ img.src = url;
+ } catch (e) {
+ SaveError(e.message);
+
+ }
+ };
+
+
+
}]);
diff --git a/www/js/MonitorCtrl.js b/www/js/MonitorCtrl.js
index 3307c800..5725a690 100644
--- a/www/js/MonitorCtrl.js
+++ b/www/js/MonitorCtrl.js
@@ -353,76 +353,6 @@ angular.module('zmApp.controllers').controller('zmApp.MonitorCtrl', ['$ionicPopu
};
- function SaveSuccess() {
- $ionicLoading.show({
- template: "done!",
- noBackdrop: true,
- duration: 1000
- });
- console.log("***SUCCESS");
- }
-
-
- function SaveError(e) {
- $ionicLoading.show({
- template: "error - could not save",
- noBackdrop: true,
- duration: 2000
- });
- ZMDataModel.zmLog("Error saving image: " + e.message);
- console.log("***ERROR");
- }
-
- //-----------------------------------------------------------------------
- // Saves a snapshot of the monitor image to phone storage
- //-----------------------------------------------------------------------
-
- //http://stackoverflow.com/questions/11618266/save-a-web-photo-to-camera-roll-in-phonegap
- $scope.saveImageToPhone = function (mid) {
- $ionicLoading.show({
- template: "saving snapshot..",
- noBackdrop: true,
- duration: zm.httpTimeout
- });
-
- console.log("IMAGE CAPTURE");
- var canvas, context, imageDataUrl, imageData;
- var loginData = ZMDataModel.getLogin();
- var url = loginData.streamingurl +
- '/cgi-bin/zms?mode=single&monitor=' + $rootScope.tempmid +
- '&user=' + loginData.username +
- '&pass=' + loginData.password;
- ZMDataModel.zmLog("SavetoPhone:Trying to save image from " + url);
-
- var img = new Image();
- img.onload = function () {
- canvas = document.createElement('canvas');
- canvas.width = img.width;
- canvas.height = img.height;
- context = canvas.getContext('2d');
- context.drawImage(img, 0, 0);
- try {
- imageDataUrl = canvas.toDataURL('image/jpeg', 1.0);
- imageData = imageDataUrl.replace(/data:image\/jpeg;base64,/, '');
- cordova.exec(
- SaveSuccess,
- SaveError,
- 'Canvas2ImagePlugin',
- 'saveImageDataToLibrary', [imageData]
- );
- } catch (e) {
-
- SaveError(e.message);
- }
- };
- try {
- img.src = url;
- } catch (e) {
- SaveError(e.message);
-
- }
- };
-
}]);
diff --git a/www/js/MontageCtrl.js b/www/js/MontageCtrl.js
index 420b6f12..1ba0c235 100644
--- a/www/js/MontageCtrl.js
+++ b/www/js/MontageCtrl.js
@@ -407,6 +407,7 @@ angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '
$ionicModal.fromTemplateUrl('templates/monitors-modal.html', {
scope: $scope,
animation: 'slide-in-up'
+
})
.then(function (modal) {
$scope.modal = modal;
@@ -593,96 +594,6 @@ angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '
$rootScope.rand = Math.floor((Math.random() * 100000) + 1);
});
- function SaveSuccess() {
- $ionicLoading.show({
- template: "done!",
- noBackdrop: true,
- duration: 1000
- });
- console.log("***SUCCESS");
- }
-
- function SaveError(e) {
- $ionicLoading.show({
- template: "error - could not save",
- noBackdrop: true,
- duration: 2000
- });
- ZMDataModel.zmLog("Error saving image: " + e.message);
- console.log("***ERROR");
- }
-
- //-----------------------------------------------------------------------
- // Saves a snapshot of the monitor image to phone storage
- //-----------------------------------------------------------------------
-
-
- $scope.saveImageToPhone = function (mid) {
- $ionicLoading.show({
- template: "saving snapshot..",
- noBackdrop: true,
- duration: zm.httpTimeout
- });
-
- console.log("IMAGE CAPTURE");
- var canvas, context, imageDataUrl, imageData;
- var loginData = ZMDataModel.getLogin();
- var url = loginData.streamingurl +
- '/cgi-bin/zms?mode=single&monitor=' + $rootScope.tempmid +
- '&user=' + loginData.username +
- '&pass=' + loginData.password;
- ZMDataModel.zmLog("SavetoPhone:Trying to save image from " + url);
-
- var img = new Image();
- img.onload = function () {
- canvas = document.createElement('canvas');
- canvas.width = img.width;
- canvas.height = img.height;
- context = canvas.getContext('2d');
- context.drawImage(img, 0, 0);
- try {
- imageDataUrl = canvas.toDataURL('image/jpeg', 1.0);
- imageData = imageDataUrl.replace(/data:image\/jpeg;base64,/, '');
- cordova.exec(
- SaveSuccess,
- SaveError,
- 'Canvas2ImagePlugin',
- 'saveImageDataToLibrary', [imageData]
- );
- } catch (e) {
-
- SaveError(e.message);
- }
- };
- try {
- img.src = url;
- } catch (e) {
- SaveError(e.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');
- });
-
- };
-
- $scope.scaleImage = function () {
- console.log("Switching image style");
- $scope.imageStyle = !$scope.imageStyle;
-
- };
}]);