summaryrefslogtreecommitdiff
path: root/www/js/ModalCtrl.js
diff options
context:
space:
mode:
authorpliablepixels <pliablepixels@gmail.com>2016-01-23 15:38:10 -0500
committerpliablepixels <pliablepixels@gmail.com>2016-01-23 15:38:10 -0500
commit0840662789289ab340179feaa97a5406e88193d3 (patch)
treee584f5ab9c1dd6a1c7f350fb4239c512b7719ef3 /www/js/ModalCtrl.js
parent7e78751d1240c9649f7fdd93bb60ec11a18e0125 (diff)
#148 - event snapshot save
Former-commit-id: d2c8a38a7a864bf5df1c87917ff359a827cc1382
Diffstat (limited to 'www/js/ModalCtrl.js')
-rw-r--r--www/js/ModalCtrl.js76
1 files changed, 76 insertions, 0 deletions
diff --git a/www/js/ModalCtrl.js b/www/js/ModalCtrl.js
index 349a2ddc..39b5efe9 100644
--- a/www/js/ModalCtrl.js
+++ b/www/js/ModalCtrl.js
@@ -675,6 +675,82 @@ $scope.togglePresets = function()
}
};
+
+
+ //-----------------------------------------------------------------------
+ // Saves a snapshot of the monitor image to phone storage
+ //-----------------------------------------------------------------------
+
+ $scope.saveEventImageToPhone = function () {
+ $ionicLoading.show({
+ template: "saving snapshot...",
+ noBackdrop: true,
+ duration: zm.httpTimeout
+ });
+
+ var curState = carouselUtils.getStop();
+ carouselUtils.setStop(true);
+
+ console.log ("Your index is " + $scope.mycarousel.index);
+ console.log ("Associated image is " + $scope.slides[$scope.mycarousel.index].img);
+
+ ZMDataModel.zmDebug("ModalCtrl: SaveEventImageToPhone called");
+ var canvas, context, imageDataUrl, imageData;
+ var loginData = ZMDataModel.getLogin();
+
+ var url = $scope.playbackURL+'/index.php?view=image&rand='+$rootScope.rand+"&path="+$scope.relativePath+$scope.slides[$scope.mycarousel.index].img;
+
+
+ ZMDataModel.zmLog ("File path to grab is " + url);
+
+ var img = new Image();
+ img.onload = function () {
+ // console.log("********* ONLOAD");
+ canvas = document.createElement('canvas');
+ canvas.width = img.width;
+ canvas.height = img.height;
+ context = canvas.getContext('2d');
+ context.drawImage(img, 0, 0);
+
+ imageDataUrl = canvas.toDataURL('image/jpeg', 1.0);
+ imageData = imageDataUrl.replace(/data:image\/jpeg;base64,/, '');
+
+ if ($rootScope.platformOS != "desktop") {
+ try {
+
+ cordova.exec(
+ SaveSuccess,
+ SaveError,
+ 'Canvas2ImagePlugin',
+ 'saveImageDataToLibrary', [imageData]
+ );
+ // carouselUtils.setStop(curState);
+ } catch (e) {
+
+ SaveError(e.message);
+ // carouselUtils.setStop(curState);
+ }
+ } else {
+
+
+ var fname = $scope.relativePath+$scope.slides[$scope.mycarousel.index].img + ".png";
+ fname = fname.replace(/\//,"-");
+ fname = fname.replace(/\.jpg/,'');
+
+ canvas.toBlob(function (blob) {
+ saveAs(blob, fname);
+ });
+ }
+ };
+ try {
+ img.src = url;
+ // console.log ("SAVING IMAGE SOURCE");
+ } catch (e) {
+ SaveError(e.message);
+
+ }
+ };
+