diff options
| -rw-r--r-- | config.xml | 6 | ||||
| -rw-r--r-- | package.json | 6 | ||||
| -rwxr-xr-x | www/js/DataModel.js | 9 | ||||
| -rw-r--r-- | www/js/EventCtrl.js | 37 | ||||
| -rw-r--r-- | www/lang/locale-en.json | 1 | ||||
| -rw-r--r-- | www/templates/devoptions.html | 7 | ||||
| -rw-r--r-- | www/templates/events.html | 4 | ||||
| -rw-r--r-- | www/templates/image-modal.html | 5 |
8 files changed, 68 insertions, 7 deletions
@@ -1,5 +1,5 @@ <?xml version='1.0' encoding='utf-8'?> -<widget android-packageName="com.pliablepixels.zmninja_pro" id="com.pliablepixels.zmninjapro" ios-CFBundleIdentifier="com.pliablepixels.zmninja-pro" version="1.2.507" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> +<widget android-packageName="com.pliablepixels.zmninja_pro" id="com.pliablepixels.zmninjapro" ios-CFBundleIdentifier="com.pliablepixels.zmninja-pro" version="1.2.510" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> <name>zmNinja</name> <description> High performance ZoneMinder client @@ -101,7 +101,7 @@ <icon src="resources/android/icon/drawable-xhdpi-icon.png" /> <preference name="SplashShowOnlyFirstTime" value="false" /> <engine name="ios" spec="4.5.4" /> - <engine name="android" spec="6.4.0" /> + <engine name="android" spec="^6.3.0" /> <plugin name="com.telerik.plugins.nativepagetransitions" spec="^0.6.5" /> <plugin name="cordova-library-helper" spec="^1.0.4"> <variable name="PHOTO_LIBRARY_USAGE_DESCRIPTION" value="Save media to your Camera Roll" /> @@ -144,9 +144,9 @@ <plugin name="cordova-plugin-email" spec="git+https://github.com/pliablepixels/cordova-email-plugin.git" /> <plugin name="cordova-plugin-touch-id" spec="^3.2.0" /> <plugin name="cordova-plugin-android-fingerprint-auth" spec="^1.4.0" /> - <plugin name="cordova-plugin-certificates" spec="git+https://github.com/hypery2k/cordova-certificate-plugin.git" /> <plugin name="phonegap-plugin-push" spec="^2.1.1"> <variable name="FCM_VERSION" value="11.0.1" /> </plugin> <plugin name="cordova-plugin-statusbar" spec="git+https://github.com/apache/cordova-plugin-statusbar.git" /> + <plugin name="cordova-plugin-certificates" spec="git+https://github.com/hypery2k/cordova-certificate-plugin.git" /> </widget> diff --git a/package.json b/package.json index cafa1da0..07e37e6e 100644 --- a/package.json +++ b/package.json @@ -50,17 +50,17 @@ "cordova-plugin-email": {}, "cordova-plugin-touch-id": {}, "cordova-plugin-android-fingerprint-auth": {}, - "cordova-plugin-certificates": {}, "phonegap-plugin-push": { "FCM_VERSION": "11.0.1" }, - "cordova-plugin-statusbar": {} + "cordova-plugin-statusbar": {}, + "cordova-plugin-certificates": {} } }, "dependencies": { "EmailComposer": "git+https://github.com/pliablepixels/email-composer.git", "com.telerik.plugins.nativepagetransitions": "^0.6.5", - "cordova-android": "6.4.0", + "cordova-android": "^6.3.0", "cordova-custom-config": "^4.0.2", "cordova-ios": "4.5.4", "cordova-library-helper": "^1.0.4", diff --git a/www/js/DataModel.js b/www/js/DataModel.js index 078a2fe2..4fd3a791 100755 --- a/www/js/DataModel.js +++ b/www/js/DataModel.js @@ -164,6 +164,7 @@ angular.module('zmApp.controllers') 'hideArchived': false, 'videoPlaybackSpeed': 2, 'enableGIFMP4': false, + 'enableThumbs': true, 'enableStrictSSL': false, 'enableSlowLoading': false, 'isFullScreen': false, @@ -994,10 +995,16 @@ angular.module('zmApp.controllers') if (typeof loginData.enableGIFMP4 == 'undefined') { - loginData.enableGIFMP4 = true; + loginData.enableGIFMP4 = false; } + if (typeof loginData.enableThumbs == 'undefined') { + + loginData.enableThumbs = true; + + } + if (typeof loginData.enableSlowLoading == 'undefined') { loginData.enableSlowLoading = false; diff --git a/www/js/EventCtrl.js b/www/js/EventCtrl.js index 8a8673e4..3468d988 100644 --- a/www/js/EventCtrl.js +++ b/www/js/EventCtrl.js @@ -65,9 +65,12 @@ angular.module('zmApp.controllers') $scope.typeOfFrames = $translate.instant('kShowTimeDiffFrames'); $scope.outlineMotion = false; $scope.outlineMotionParam = ""; + + var eventsListScrubHeight = eventsListScrubHeight; var eventsListDetailsHeight = eventsListDetailsHeight; + //--------------------------------------------------- // initial code //--------------------------------------------------- @@ -148,6 +151,14 @@ angular.module('zmApp.controllers') eventsListDetailsHeight = parseInt(zm.eventsListDetailsHeight * $rootScope.textScaleFactor); eventsListScrubHeight = parseInt(zm.eventsListScrubHeight * $rootScope.textScaleFactor); + + if (NVRDataModel.getLogin().enableThumbs) { + NVRDataModel.debug ("--> thumbnail means increasing row size"); + eventsListScrubHeight=370; + eventsListDetailsHeight=300; + + } + NVRDataModel.debug(">>>height of list/scrub set to " + eventsListDetailsHeight + " and " + eventsListScrubHeight); pageLoaded = false; @@ -2682,6 +2693,32 @@ angular.module('zmApp.controllers') }); + + + $scope.showThumbnail = function (b,f) { + + + $scope.thumbnailLarge=b+'/index.php?view=image&fid='+f; + $ionicModal.fromTemplateUrl('templates/image-modal.html', + { + scope: $scope, + animation: 'slide-in-up', + id: 'thumbnail', + }) + .then(function(modal) + { + $scope.modal = modal; + + + $scope.modal.show(); + + var ld = NVRDataModel.getLogin(); + + }); + + }; + + //-------------------------------------------------------- //This is called when we first tap on an event to see // the feed. It's important to instantiate ionicModal here diff --git a/www/lang/locale-en.json b/www/lang/locale-en.json index 67926f08..22272ed8 100644 --- a/www/lang/locale-en.json +++ b/www/lang/locale-en.json @@ -80,6 +80,7 @@ "kEnableNewsUpdates" :"enable news updates", "kEnableSlowLoading" :"Use large HTTP timeouts", "kEnableStrictSSL" :"Enable strict SSL check", + "kEnableThumbs" :"Enable thumbnails in events list", "kEnterPin" :"Enter PIN", "kError" :"Error", "kErrorChangingMonitors" :"Error changing monitors. Please check logs", diff --git a/www/templates/devoptions.html b/www/templates/devoptions.html index db1f8887..03b7d7b8 100644 --- a/www/templates/devoptions.html +++ b/www/templates/devoptions.html @@ -128,6 +128,13 @@ </ion-toggle> </label> + + <label> + <ion-toggle ng-model="loginData.enableThumbs" ng-checked="loginData.enableThumbs" toggle-class="toggle-calm"><span class="item-text-wrap">{{'kEnableThumbs' | translate}} + </span> + </ion-toggle> + </label> + <label> <ion-toggle ng-model="loginData.enableSlowLoading" ng-checked="loginData.enableSlowLoading" toggle-class="toggle-calm"><span class="item-text-wrap">{{'kEnableSlowLoading' | translate}} </span> diff --git a/www/templates/events.html b/www/templates/events.html index 92610eaf..31af018d 100644 --- a/www/templates/events.html +++ b/www/templates/events.html @@ -75,6 +75,10 @@ <button ng-if="event.Event.DefaultVideo!='' && event.Event.DefaultVideo!=undefined && $root.platformOS!='desktop' && loginData.enableGIFMP4 " class="button button-small button-clear icon mp4-icon" ng-click="downloadFileToDevice(event.Event.videoPath, event.Event.Id)"> </button> + <!-- thumbnail --> + + <img ng-if="loginData.enableThumbs" style="float:right;max-width:150px; max-height:200px;" ng-src="{{event.Event.baseURL}}/index.php?view=image&fid={{event.Event.MaxScoreFrameId}}" on-tap="showThumbnail(event.Event.baseURL,event.Event.MaxScoreFrameId)" /> + </div> diff --git a/www/templates/image-modal.html b/www/templates/image-modal.html new file mode 100644 index 00000000..2ed126c6 --- /dev/null +++ b/www/templates/image-modal.html @@ -0,0 +1,5 @@ +<ion-modal-view cache-view="false" style="background-color:#444444"> +<ion-content> + <img on-double-tap="closeModal();" src="{{thumbnailLarge}}" style="display:block; width:100%"/> +</ion-content> +</ion-modal-view> |
