summaryrefslogtreecommitdiff
path: root/www/js/MontageCtrl.js
diff options
context:
space:
mode:
authorPliable Pixels <pliablepixels@gmail.com>2016-09-01 11:44:40 -0400
committerPliable Pixels <pliablepixels@gmail.com>2016-09-01 11:44:40 -0400
commit2e1a669455190e3d0d857e613cc34cd22f4862c0 (patch)
tree850e2d0abcd5dbbc603b5f054725691ed5abb951 /www/js/MontageCtrl.js
parentdc5dd1c8684266c320cccd6e8943b5d419a280e4 (diff)
mostly formatting and removal of console.logs
Former-commit-id: 5cbac40ad5ccb7096fb7b9f58696e923ba282232
Diffstat (limited to 'www/js/MontageCtrl.js')
-rw-r--r--www/js/MontageCtrl.js1341
1 files changed, 651 insertions, 690 deletions
diff --git a/www/js/MontageCtrl.js b/www/js/MontageCtrl.js
index 595f61f1..73de328b 100644
--- a/www/js/MontageCtrl.js
+++ b/www/js/MontageCtrl.js
@@ -4,7 +4,7 @@
/* global cordova,StatusBar,angular,console,ionic,Packery, Draggabilly, imagesLoaded, ConnectSDK */
-angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '$rootScope', 'ZMDataModel', 'message', '$ionicSideMenuDelegate', '$timeout', '$interval', '$ionicModal', '$ionicLoading', '$http', '$state', '$ionicPopup', '$stateParams', '$ionicHistory', '$ionicScrollDelegate', '$ionicPlatform', 'zm', '$ionicPopover', '$controller', 'imageLoadingDataShare', '$window', '$localstorage', '$translate', function ($scope, $rootScope, ZMDataModel, message, $ionicSideMenuDelegate, $timeout, $interval, $ionicModal, $ionicLoading, $http, $state, $ionicPopup, $stateParams, $ionicHistory, $ionicScrollDelegate, $ionicPlatform, zm, $ionicPopover, $controller, imageLoadingDataShare, $window, $localstorage, $translate) {
+angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '$rootScope', 'ZMDataModel', 'message', '$ionicSideMenuDelegate', '$timeout', '$interval', '$ionicModal', '$ionicLoading', '$http', '$state', '$ionicPopup', '$stateParams', '$ionicHistory', '$ionicScrollDelegate', '$ionicPlatform', 'zm', '$ionicPopover', '$controller', 'imageLoadingDataShare', '$window', '$localstorage', '$translate', function ($scope, $rootScope, ZMDataModel, message, $ionicSideMenuDelegate, $timeout, $interval, $ionicModal, $ionicLoading, $http, $state, $ionicPopup, $stateParams, $ionicHistory, $ionicScrollDelegate, $ionicPlatform, zm, $ionicPopover, $controller, imageLoadingDataShare, $window, $localstorage, $translate) {
//---------------------------------------------------------------------
// Controller main
@@ -12,8 +12,8 @@ angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '
var intervalHandleMontage; // image re-load handler
var intervalHandleAlarmStatus; // status of each alarm state
-
-
+
+
var gridcontainer;
var pckry, draggie;
var draggies;
@@ -22,40 +22,34 @@ angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '
var sizeInProgress;
var modalIntervalHandle;
var ld;
-
-
- // --------------------------------------------------------
+
+
+ // --------------------------------------------------------
// Handling of back button in case modal is open should
// close the modal
// --------------------------------------------------------
-
-
+
+
$ionicPlatform.registerBackButtonAction(function (e) {
- e.preventDefault();
- if ($scope.modal !=undefined && $scope.modal.isShown())
- {
- // switch off awake, as liveview is finished
- ZMDataModel.zmDebug("Modal is open, closing it");
- ZMDataModel.setAwake(false);
- $scope.isModalActive = false;
- cleanupOnClose();
- }
- else
- {
- ZMDataModel.zmDebug("Modal is closed, so toggling or exiting");
- if (!$ionicSideMenuDelegate.isOpenLeft())
- {
- $ionicSideMenuDelegate.toggleLeft();
-
- }
- else
- {
- navigator.app.exitApp();
- }
-
+ e.preventDefault();
+ if ($scope.modal != undefined && $scope.modal.isShown()) {
+ // switch off awake, as liveview is finished
+ ZMDataModel.zmDebug("Modal is open, closing it");
+ ZMDataModel.setAwake(false);
+ $scope.isModalActive = false;
+ cleanupOnClose();
+ } else {
+ ZMDataModel.zmDebug("Modal is closed, so toggling or exiting");
+ if (!$ionicSideMenuDelegate.isOpenLeft()) {
+ $ionicSideMenuDelegate.toggleLeft();
+
+ } else {
+ navigator.app.exitApp();
}
-
- }, 1000);
+
+ }
+
+ }, 1000);
/*$scope.toggleHide = function(mon)
{
@@ -69,362 +63,343 @@ angular.module('zmApp.controllers').controller('zmApp.MontageCtrl', ['$scope', '
};*/
-
-
-// called by afterEnter to load Packery
-function initPackery()
-{
-
-
+
+
+ // called by afterEnter to load Packery
+ function initPackery() {
+
+
$ionicLoading.show({
- template: $translate.instant('kArrangingImages'),
- noBackdrop: true,
- duration: zm.loadingTimeout
- });
-
+ template: $translate.instant('kArrangingImages'),
+ noBackdrop: true,
+ duration: zm.loadingTimeout
+ });
+
var progressCalled = false;
draggies = [];
var layouttype = true;
var ld = ZMDataModel.getLogin();
-
-
+
+
var positionsStr = ld.packeryPositions;
- var positions={};
-
- if (positionsStr == '')
- {
- ZMDataModel.zmLog ("Did NOT find a packery layout");
- layouttype = true;
- }
- else
- {
-
- console.log ("POSITION STR IS " + positionsStr);
+ var positions = {};
+
+ if (positionsStr == '') {
+ ZMDataModel.zmLog("Did NOT find a packery layout");
+ layouttype = true;
+ } else {
+
+ //console.log ("POSITION STR IS " + positionsStr);
positions = JSON.parse(positionsStr);
- ZMDataModel.zmLog ("found a packery layout");
+ ZMDataModel.zmLog("found a packery layout");
layouttype = false;
}
-
-
- var cnt=0;
- $scope.MontageMonitors.forEach(function(elem)
- {
- if ((elem.Monitor.Enabled!='0') && (elem.Monitor.Function!='None') )
+
+
+ var cnt = 0;
+ $scope.MontageMonitors.forEach(function (elem) {
+ if ((elem.Monitor.Enabled != '0') && (elem.Monitor.Function != 'None'))
cnt++;
});
-
- ZMDataModel.zmLog ("Monitors that are active and not DOM hidden: " + cnt + " while grid has " + positions.length);
-
- if (cnt > ZMDataModel.getLogin().maxMontage )
- {
- cnt = ZMDataModel.getLogin().maxMontage;
- ZMDataModel.zmLog ("restricting monitor count to " + cnt + " due to max-montage setting");
- }
-
- if (cnt!= positions.length)
- {
-
- ZMDataModel.zmLog ("Whoops!! Monitors have changed. I'm resetting layouts, sorry!");
- layouttype = true;
- positions = {};
- }
-
- var elem = angular.element(document.getElementById("mygrid"));
-
- //console.log ("**** mygrid is " + JSON.stringify(elem));
-
- imagesLoaded(elem).on('progress', function(instance, img) {
-
- progressCalled = true;
-
- // if (layouttype) $timeout (function(){layout(pckry);},100);
+
+ ZMDataModel.zmLog("Monitors that are active and not DOM hidden: " + cnt + " while grid has " + positions.length);
+
+ if (cnt > ZMDataModel.getLogin().maxMontage) {
+ cnt = ZMDataModel.getLogin().maxMontage;
+ ZMDataModel.zmLog("restricting monitor count to " + cnt + " due to max-montage setting");
+ }
+
+ if (cnt != positions.length) {
+
+ ZMDataModel.zmLog("Whoops!! Monitors have changed. I'm resetting layouts, sorry!");
+ layouttype = true;
+ positions = {};
+ }
+
+ var elem = angular.element(document.getElementById("mygrid"));
+
+ //console.log ("**** mygrid is " + JSON.stringify(elem));
+
+ imagesLoaded(elem).on('progress', function (instance, img) {
+
+ progressCalled = true;
+
+ // if (layouttype) $timeout (function(){layout(pckry);},100);
});
-
- imagesLoaded(elem).on('always', function() {
- //console.log ("******** ALL IMAGES LOADED");
- ZMDataModel.zmDebug ("All images loaded");
- $scope.allImagesLoaded = true;
-
- $ionicLoading.hide();
-
- pckry = new Packery('.grid',
- {
- itemSelector: '.grid-item',
- percentPosition: true,
- columnWidth: '.grid-sizer',
- gutter:0,
- initLayout:layouttype
-
- });
- if (!progressCalled)
- {
- ZMDataModel.zmLog ("*** BUG PROGRESS WAS NOT CALLED");
- pckry.reloadItems();
-
- }
-
- $timeout (function() {
-
- pckry.getItemElements().forEach(function (itemElem) {
- draggie = new Draggabilly(itemElem);
- pckry.bindDraggabillyEvents(draggie);
- draggies.push(draggie);
- draggie.disable();
- draggie.unbindHandles();
- });
-
- pckry.on( 'dragItemPositioned', itemDragged );
-
-
-
- if (!isEmpty(positions))
- {
- ZMDataModel.zmLog ("Arranging as per packery grid");
-
- for (var i =0; i< $scope.MontageMonitors.length; i++)
- {
- for (var j=0; j < positions.length; j++)
- {
- if ($scope.MontageMonitors[i].Monitor.Id == positions[j].attr)
- {
- $scope.MontageMonitors[i].Monitor.gridScale = positions[j].size;
- $scope.MontageMonitors[i].Monitor.listDisplay = positions[j].display;
- ZMDataModel.zmDebug ("Setting monitor ID: " + $scope.MontageMonitors[i].Monitor.Id + " to size: " +positions[j].size + " and display:" + positions[j].display);
- }
- //console.log ("Index:"+positions[j].attr+ " with size: " + positions[j].size);
+
+ imagesLoaded(elem).on('always', function () {
+ //console.log ("******** ALL IMAGES LOADED");
+ ZMDataModel.zmDebug("All images loaded");
+ $scope.allImagesLoaded = true;
+
+ $ionicLoading.hide();
+
+ pckry = new Packery('.grid', {
+ itemSelector: '.grid-item',
+ percentPosition: true,
+ columnWidth: '.grid-sizer',
+ gutter: 0,
+ initLayout: layouttype
+
+ });
+ if (!progressCalled) {
+ ZMDataModel.zmLog("*** BUG PROGRESS WAS NOT CALLED");
+ pckry.reloadItems();
+
+ }
+
+ $timeout(function () {
+
+ pckry.getItemElements().forEach(function (itemElem) {
+ draggie = new Draggabilly(itemElem);
+ pckry.bindDraggabillyEvents(draggie);
+ draggies.push(draggie);
+ draggie.disable();
+ draggie.unbindHandles();
+ });
+
+ pckry.on('dragItemPositioned', itemDragged);
+
+
+
+ if (!isEmpty(positions)) {
+ ZMDataModel.zmLog("Arranging as per packery grid");
+
+ for (var i = 0; i < $scope.MontageMonitors.length; i++) {
+ for (var j = 0; j < positions.length; j++) {
+ if ($scope.MontageMonitors[i].Monitor.Id == positions[j].attr) {
+ $scope.MontageMonitors[i].Monitor.gridScale = positions[j].size;
+ $scope.MontageMonitors[i].Monitor.listDisplay = positions[j].display;
+ ZMDataModel.zmDebug("Setting monitor ID: " + $scope.MontageMonitors[i].Monitor.Id + " to size: " + positions[j].size + " and display:" + positions[j].display);
}
+ //console.log ("Index:"+positions[j].attr+ " with size: " + positions[j].size);
}
+ }
+
+
+ ZMDataModel.zmDebug("All images loaded, doing image layout");
+ $timeout(function () {
+ pckry.initShiftLayout(positions, 'data-item-id');
+ }, 0);
+ }
+ $timeout(function () {
+ ZMDataModel.zmLog("Force calling resize");
+ pckry.shiftLayout();
+ }, zm.packeryTimer); // don't ask
- ZMDataModel.zmDebug ("All images loaded, doing image layout");
- $timeout (function() {pckry.initShiftLayout(positions, 'data-item-id');},0);
- }
- $timeout(function(){ZMDataModel.zmLog ("Force calling resize"); pckry.shiftLayout();},zm.packeryTimer);// don't ask
-
-
- },zm.packeryTimer);
-
+ }, zm.packeryTimer);
+
});
-
- function itemDragged(item)
- {
- ZMDataModel.zmDebug ("drag complete");
-
- pckry.getItemElements().forEach(function (itemElem) {
-
- console.log (itemElem.attributes['data-item-id'].value+" size "+itemElem.attributes['data-item-size'].value );
- });
-
+
+ function itemDragged(item) {
+ ZMDataModel.zmDebug("drag complete");
+
+ //pckry.getItemElements().forEach(function (itemElem) {
+
+ //console.log (itemElem.attributes['data-item-id'].value+" size "+itemElem.attributes['data-item-size'].value );
+ // });
+
var positions = pckry.getShiftPositions('data-item-id');
- //console.log ("POSITIONS MAP " + JSON.stringify(positions));
- var ld = ZMDataModel.getLogin();
- ld.packeryPositions = JSON.stringify(positions);
- ZMDataModel.setLogin(ld);
+ //console.log ("POSITIONS MAP " + JSON.stringify(positions));
+ var ld = ZMDataModel.getLogin();
+ ld.packeryPositions = JSON.stringify(positions);
+ ZMDataModel.setLogin(ld);
}
-
-
+
+
}
-
- function isEmpty( obj )
- {
- for ( var prop in obj ) {
- return false;
- }
- return true;
+
+ function isEmpty(obj) {
+ for (var prop in obj) {
+ return false;
+ }
+ return true;
}
-
+
//-----------------------------------------------------------------------
// color for monitor state in montage
//-----------------------------------------------------------------------
-
- $scope.stateColor = function()
- {
- console.log ("***MONSTATUS**"+$scope.monStatus+"**");
- var attr="";
- switch ($scope.monStatus)
- {
+
+ $scope.stateColor = function () {
+ //console.log ("***MONSTATUS**"+$scope.monStatus+"**");
+ var attr = "";
+ switch ($scope.monStatus) {
case "":
- attr="color:rgba(0, 0, 0, 0)";
+ attr = "color:rgba(0, 0, 0, 0)";
break;
case "idle":
- attr="color:rgba(0, 0, 0, 0)";
+ attr = "color:rgba(0, 0, 0, 0)";
break;
case "pre-alarm":
- attr="color:#e67e22";
+ attr = "color:#e67e22";
break;
case "alarmed":
- attr="color:#D91E18";
+ attr = "color:#D91E18";
break;
case "alert":
- attr="color:#e67e22";
+ attr = "color:#e67e22";
break;
case "record":
- attr="color:#26A65B";
+ attr = "color:#26A65B";
break;
}
-
+
return attr;
};
//-----------------------------------------------------------------------
// cycle through all displayed monitors and check alarm status
//-----------------------------------------------------------------------
-
- function loadAlarmStatus()
- {
-
- if (ZMDataModel.versionCompare($rootScope.apiVersion,"1.30")==-1)
- {
-
+
+ function loadAlarmStatus() {
+
+ if (ZMDataModel.versionCompare($rootScope.apiVersion, "1.30") == -1) {
+
return;
}
-
- for (var i=0; i < $scope.MontageMonitors.length; i++)
- {
- if (($scope.MontageMonitors[i].Monitor.Function == 'None') ||
+
+ for (var i = 0; i < $scope.MontageMonitors.length; i++) {
+ if (($scope.MontageMonitors[i].Monitor.Function == 'None') ||
($scope.MontageMonitors[i].Monitor.Enabled == '0') ||
- ($scope.MontageMonitors[i].Monitor.listDisplay == 'noshow'))
- {
+ ($scope.MontageMonitors[i].Monitor.listDisplay == 'noshow')) {
continue;
}
getAlarmStatus($scope.MontageMonitors[i]);
-
+
}
-
+
}
-
- //-----------------------------------------------------------------------
+
+ //-----------------------------------------------------------------------
// get alarm status over HTTP for a single monitor
//-----------------------------------------------------------------------
- function getAlarmStatus(monitor)
- {
+ function getAlarmStatus(monitor) {
var apiurl = ZMDataModel.getLogin().apiurl;
//console.log ("ALARM CALLED WITH " +JSON.stringify(monitor));
-
- var alarmurl = apiurl+"/monitors/alarm/id:"+monitor.Monitor.Id+"/command:status.json";
- // console.log("Alarm Check: Invoking " + alarmurl);
-
-
+
+ var alarmurl = apiurl + "/monitors/alarm/id:" + monitor.Monitor.Id + "/command:status.json";
+ // console.log("Alarm Check: Invoking " + alarmurl);
+
+
$http.get(alarmurl)
- .then (function (data) {
- // ZMDataModel.zmDebug ("Success in monitor alarmed status " + JSON.stringify(data));
-
- var sid = parseInt(data.data.status);
- switch (sid) {
- case 0: // idle
- monitor.Monitor.alarmState = 'color:rgba(0,0,0,0);';
- break;
- case 1:// pre alarm
- monitor.Monitor.alarmState = 'color:#e67e22;';
- break;
- case 2: // alarm
- monitor.Monitor.alarmState = 'color:#D91E18;';
- break;
- case 3: // alert
- monitor.Monitor.alarmState = 'color:#e67e22;';
- break;
- case 4:
- monitor.Monitor.alarmState = 'color:#26A65B;';
- break;
-
- }
-
- },
+ .then(function (data) {
+ // ZMDataModel.zmDebug ("Success in monitor alarmed status " + JSON.stringify(data));
+
+ var sid = parseInt(data.data.status);
+ switch (sid) {
+ case 0: // idle
+ monitor.Monitor.alarmState = 'color:rgba(0,0,0,0);';
+ break;
+ case 1: // pre alarm
+ monitor.Monitor.alarmState = 'color:#e67e22;';
+ break;
+ case 2: // alarm
+ monitor.Monitor.alarmState = 'color:#D91E18;';
+ break;
+ case 3: // alert
+ monitor.Monitor.alarmState = 'color:#e67e22;';
+ break;
+ case 4:
+ monitor.Monitor.alarmState = 'color:#26A65B;';
+ break;
+
+ }
+
+ },
function (error) {
-
-
- monitor.Monitor.alarmState = 'color:rgba(0,0,0,0);';
- ZMDataModel.zmDebug ("Error in monitor alarmed status ");
- });
+
+
+ monitor.Monitor.alarmState = 'color:rgba(0,0,0,0);';
+ ZMDataModel.zmDebug("Error in monitor alarmed status ");
+ });
}
-
-
- //-----------------------------------------------------------------------
+
+
+ //-----------------------------------------------------------------------
// re-compute rand so snapshot in montage reloads
//-----------------------------------------------------------------------
-
+
function loadNotifications() {
-
- if (!$scope.allImagesLoaded)
- {
- ZMDataModel.zmDebug ("skipping image refresh, packery is still loading");
+
+ if (!$scope.allImagesLoaded) {
+ ZMDataModel.zmDebug("skipping image refresh, packery is still loading");
return;
}
-
+
$rootScope.rand = Math.floor((Math.random() * 100000) + 1);
//console.log ("Inside Montage timer...");
}
- $scope.cancelReorder = function()
- {
- $scope.modal.remove();
+ $scope.cancelReorder = function () {
+ $scope.modal.remove();
};
-
- $scope.saveReorder = function()
- {
- ZMDataModel.zmDebug ("Saving monitor hide/unhide and sizes");
-
-
-
-
+
+ $scope.saveReorder = function () {
+ ZMDataModel.zmDebug("Saving monitor hide/unhide and sizes");
+
+
+
+
$scope.MontageMonitors = $scope.copyMontage;
$scope.modal.remove();
- $timeout( function() {pckry.reloadItems();},400);
- $timeout( function() {
-
+ $timeout(function () {
+ pckry.reloadItems();
+ }, 400);
+ $timeout(function () {
+
draggies.forEach(function (drag) {
drag.destroy();
});
-
+
draggies = [];
-
- pckry.once( 'layoutComplete', function() {
- console.log('Saving packery order now, layout rendered');
- $timeout(function() {var positions = pckry.getShiftPositions('data-item-id');
- ZMDataModel.zmDebug ("POSITIONS MAP " + JSON.stringify(positions));
- var ld = ZMDataModel.getLogin();
- ld.packeryPositions = JSON.stringify(positions);
- ZMDataModel.setLogin(ld);});
+
+ pckry.once('layoutComplete', function () {
+ //console.log('Saving packery order now, layout rendered');
+ $timeout(function () {
+ var positions = pckry.getShiftPositions('data-item-id');
+ ZMDataModel.zmDebug("POSITIONS MAP " + JSON.stringify(positions));
+ var ld = ZMDataModel.getLogin();
+ ld.packeryPositions = JSON.stringify(positions);
+ ZMDataModel.setLogin(ld);
+ });
});
-
+
pckry.getItemElements().forEach(function (itemElem) {
- draggie = new Draggabilly(itemElem);
- pckry.bindDraggabillyEvents(draggie);
- draggies.push(draggie);
- draggie.disable();
- });
+ draggie = new Draggabilly(itemElem);
+ pckry.bindDraggabillyEvents(draggie);
+ draggies.push(draggie);
+ draggie.disable();
+ });
pckry.layout();
-
- },800);
-
- $ionicScrollDelegate.$getByHandle("montage-delegate").scrollTop();
-
+
+ }, 800);
+
+ $ionicScrollDelegate.$getByHandle("montage-delegate").scrollTop();
+
};
-
- $scope.toggleDelete = function (i)
- {
-
+
+ $scope.toggleDelete = function (i) {
+
if ($scope.copyMontage[i].Monitor.listDisplay == 'show')
$scope.copyMontage[i].Monitor.listDisplay = 'noshow';
else
$scope.copyMontage[i].Monitor.listDisplay = 'show';
-
- ZMDataModel.zmDebug ("index " + i + " is now " + $scope.copyMontage[i].Monitor.listDisplay);
+
+ ZMDataModel.zmDebug("index " + i + " is now " + $scope.copyMontage[i].Monitor.listDisplay);
};
-
- $scope.hideUnhide = function()
- {
- if ($scope.isDragabillyOn)
- {
- dragToggle();
+
+ $scope.hideUnhide = function () {
+ if ($scope.isDragabillyOn) {
+ dragToggle();
}
- $scope.copyMontage = angular.copy ($scope.MontageMonitors);
+ $scope.copyMontage = angular.copy($scope.MontageMonitors);
$ionicModal.fromTemplateUrl('templates/reorder-modal.html', {
scope: $scope,
animation: 'slide-in-up'
@@ -434,17 +409,17 @@ function initPackery()
$scope.modal.show();
});
};
-
-
-
-/*
- $scope.closeReorderModal = function () {
-
- $scope.modal.remove();
- };
- */
-
+
+
+ /*
+ $scope.closeReorderModal = function () {
+
+ $scope.modal.remove();
+
+ };
+ */
+
//----------------------------------------------------------------
// Alarm emit handling
//----------------------------------------------------------------
@@ -454,91 +429,94 @@ function initPackery()
return;
//console.log ("***EVENT TRAP***");
var alarmMonitors = args.message;
- for (var i=0; i< alarmMonitors.length; i++)
- {
+ for (var i = 0; i < alarmMonitors.length; i++) {
//console.log ("**** TRAPPED EVENT: "+alarmMonitors[i]);
-
- for (var j=0; j<$scope.MontageMonitors.length; j++)
- {
- if ($scope.MontageMonitors[j].Monitor.Id == alarmMonitors[i])
- {
- ZMDataModel.zmDebug ("Enabling alarm for Monitor:"+$scope.monitors[j].Monitor.Id );
- $scope.MontageMonitors[j].Monitor.isAlarmed=true;
+
+ for (var j = 0; j < $scope.MontageMonitors.length; j++) {
+ if ($scope.MontageMonitors[j].Monitor.Id == alarmMonitors[i]) {
+ ZMDataModel.zmDebug("Enabling alarm for Monitor:" + $scope.monitors[j].Monitor.Id);
+ $scope.MontageMonitors[j].Monitor.isAlarmed = true;
scheduleRemoveFlash(j);
}
}
-
+
}
-
-
+
+
});
-
- function scheduleRemoveFlash(id)
- {
- ZMDataModel.zmDebug ("Scheduled a "+zm.alarmFlashTimer+"ms timer for dis-alarming monitor ID:"+$scope.MontageMonitors[id].Monitor.Id);
- $timeout( function() {
+
+ function scheduleRemoveFlash(id) {
+ ZMDataModel.zmDebug("Scheduled a " + zm.alarmFlashTimer + "ms timer for dis-alarming monitor ID:" + $scope.MontageMonitors[id].Monitor.Id);
+ $timeout(function () {
$scope.MontageMonitors[id].Monitor.isAlarmed = false;
- ZMDataModel.zmDebug ("dis-alarming monitor ID:"+$scope.MontageMonitors[id].Monitor.Id);
- },zm.alarmFlashTimer);
+ ZMDataModel.zmDebug("dis-alarming monitor ID:" + $scope.MontageMonitors[id].Monitor.Id);
+ }, zm.alarmFlashTimer);
}
//----------------------------------------------------------------
// Alarm notification handling
//----------------------------------------------------------------
- $scope.handleAlarms = function()
- {
- $rootScope.isAlarm=!$rootScope.isAlarm;
- if (!$rootScope.isAlarm)
- {
- $rootScope.alarmCount="0";
- $ionicHistory.nextViewOptions({disableBack: true});
- $state.go("events", {"id": 0}, { reload: true });
+ $scope.handleAlarms = function () {
+ $rootScope.isAlarm = !$rootScope.isAlarm;
+ if (!$rootScope.isAlarm) {
+ $rootScope.alarmCount = "0";
+ $ionicHistory.nextViewOptions({
+ disableBack: true
+ });
+ $state.go("events", {
+ "id": 0
+ }, {
+ reload: true
+ });
}
};
-
- $scope.handleAlarmsWhileMinimized = function()
- {
- $rootScope.isAlarm=!$rootScope.isAlarm;
-
- $scope.minimal = !$scope.minimal;
+
+ $scope.handleAlarmsWhileMinimized = function () {
+ $rootScope.isAlarm = !$rootScope.isAlarm;
+
+ $scope.minimal = !$scope.minimal;
ZMDataModel.zmDebug("MontageCtrl: switch minimal is " + $scope.minimal);
ionic.Platform.fullScreen($scope.minimal, !$scope.minimal);
- console.log ("alarms:Cancelling timer");
+ //console.log ("alarms:Cancelling timer");
$interval.cancel(intervalHandleMontage);
$interval.cancel(intervalHandleAlarmStatus);
-
- if (!$rootScope.isAlarm)
- {
- $rootScope.alarmCount="0";
- $ionicHistory.nextViewOptions({disableBack: true});
- $state.go("events", {"id": 0}, { reload: true });
+
+ if (!$rootScope.isAlarm) {
+ $rootScope.alarmCount = "0";
+ $ionicHistory.nextViewOptions({
+ disableBack: true
+ });
+ $state.go("events", {
+ "id": 0
+ }, {
+ reload: true
+ });
}
};
-
-
+
+
//-------------------------------------------------------------
// this is checked to make sure we are not pulling images
// when app is in background. This is a problem with Android,
// for example
//-------------------------------------------------------------
- $scope.isBackground = function()
- {
+ $scope.isBackground = function () {
//console.log ("Is background called from Montage and returned " +
//ZMDataModel.isBackground());
return ZMDataModel.isBackground();
};
-
+
//---------------------------------------------------------------------
// Triggered when you enter/exit full screen
//---------------------------------------------------------------------
$scope.switchMinimal = function () {
$scope.minimal = !$scope.minimal;
ZMDataModel.zmDebug("MontageCtrl: switch minimal is " + $scope.minimal);
- // console.log("Hide Statusbar");
+ // console.log("Hide Statusbar");
ionic.Platform.fullScreen($scope.minimal, !$scope.minimal);
- console.log ("minimal switch:Cancelling timer");
+ //console.log ("minimal switch:Cancelling timer");
$interval.cancel(intervalHandleMontage); //we will renew on reload
$interval.cancel(intervalHandleAlarmStatus);
// We are reloading this view, so we don't want entry animations
@@ -559,92 +537,83 @@ function initPackery()
$scope.showPTZ = !$scope.showPTZ;
};
-
-
- $scope.toggleSelectItem = function(ndx)
- {
-
- if ($scope.MontageMonitors[ndx].Monitor.selectStyle !== "undefined" && $scope.MontageMonitors[ndx].Monitor.selectStyle=="dragborder-selected")
- {
- $scope.MontageMonitors[ndx].Monitor.selectStyle="";
- }
- else
- {
- $scope.MontageMonitors[ndx].Monitor.selectStyle="dragborder-selected";
- }
- console.log ("Switched value to " + $scope.MontageMonitors[ndx].Monitor.selectStyle);
+
+
+ $scope.toggleSelectItem = function (ndx) {
+
+ if ($scope.MontageMonitors[ndx].Monitor.selectStyle !== "undefined" && $scope.MontageMonitors[ndx].Monitor.selectStyle == "dragborder-selected") {
+ $scope.MontageMonitors[ndx].Monitor.selectStyle = "";
+ } else {
+ $scope.MontageMonitors[ndx].Monitor.selectStyle = "dragborder-selected";
+ }
+ //console.log ("Switched value to " + $scope.MontageMonitors[ndx].Monitor.selectStyle);
};
//---------------------------------------------------------------------
// Called when you enable/disable dragging
//---------------------------------------------------------------------
-
- $scope.dragToggle = function()
- {
+
+ $scope.dragToggle = function () {
dragToggle();
-
-
+
+
};
-
- function dragToggle()
- {
+
+ function dragToggle() {
var i;
$scope.isDragabillyOn = !$scope.isDragabillyOn;
-
- $ionicSideMenuDelegate.canDragContent($scope.isDragabillyOn? false: true);
-
+
+ $ionicSideMenuDelegate.canDragContent($scope.isDragabillyOn ? false : true);
+
//$timeout(function(){pckry.reloadItems();},10);
- ZMDataModel.zmDebug ("setting dragabilly to " + $scope.isDragabillyOn);
- if ($scope.isDragabillyOn)
- {
+ ZMDataModel.zmDebug("setting dragabilly to " + $scope.isDragabillyOn);
+ if ($scope.isDragabillyOn) {
$scope.showSizeButtons = true;
-
- $scope.dragBorder="dragborder";
- ZMDataModel.zmDebug ("Enabling drag for " + draggies.length + " items");
- for (i=0; i < draggies.length; i++)
- {
+
+ $scope.dragBorder = "dragborder";
+ ZMDataModel.zmDebug("Enabling drag for " + draggies.length + " items");
+ for (i = 0; i < draggies.length; i++) {
draggies[i].enable();
draggies[i].bindHandles();
}
-
- // reflow and reload as some may be hidden
+
+ // reflow and reload as some may be hidden
// $timeout(function(){pckry.reloadItems();$timeout(function(){pckry.layout();},300);},100);
- }
- else
- {
- $scope.dragBorder="";
- ZMDataModel.zmDebug ("Disabling drag for " + draggies.length + " items");
- for ( i=0; i < draggies.length; i++)
- {
+ } else {
+ $scope.dragBorder = "";
+ ZMDataModel.zmDebug("Disabling drag for " + draggies.length + " items");
+ for (i = 0; i < draggies.length; i++) {
draggies[i].disable();
draggies[i].unbindHandles();
}
- for (i=0; i < $scope.MontageMonitors.length; i++)
- {
- $scope.MontageMonitors[i].Monitor.selectStyle="";
+ for (i = 0; i < $scope.MontageMonitors.length; i++) {
+ $scope.MontageMonitors[i].Monitor.selectStyle = "";
}
// reflow and reload as some may be hidden
- $timeout(function(){$timeout(function(){ var positions = pckry.getShiftPositions('data-item-id');
- console.log ("POSITIONS MAP " + JSON.stringify(positions));
- var ld = ZMDataModel.getLogin();
- ld.packeryPositions = JSON.stringify(positions);
- ZMDataModel.setLogin(ld);},300);},100);
-
+ $timeout(function () {
+ $timeout(function () {
+ var positions = pckry.getShiftPositions('data-item-id');
+ //console.log ("POSITIONS MAP " + JSON.stringify(positions));
+ var ld = ZMDataModel.getLogin();
+ ld.packeryPositions = JSON.stringify(positions);
+ ZMDataModel.setLogin(ld);
+ }, 300);
+ }, 100);
+
}
}
-
-
+
+
//---------------------------------------------------------------------
// main monitor modal open - if drag is not on, this is called on touch
//---------------------------------------------------------------------
-
- $scope.openModal = function (mid, controllable, controlid, connKey, monitor)
- {
- openModal (mid, controllable, controlid, connKey, monitor);
+
+ $scope.openModal = function (mid, controllable, controlid, connKey, monitor) {
+ openModal(mid, controllable, controlid, connKey, monitor);
};
-
- function openModal(mid, controllable, controlid, connKey, monitor) {
+
+ function openModal(mid, controllable, controlid, connKey, monitor) {
ZMDataModel.zmDebug("MontageCtrl: Open Monitor Modal with monitor Id=" + mid + " and Controllable:" + controllable + " with control ID:" + controlid);
// $scope.isModalActive = true;
// Note: no need to setAwake(true) as its already awake
@@ -652,7 +621,7 @@ function initPackery()
ZMDataModel.zmLog("Cancelling montage timer, opening Modal");
// ZMDataModel.zmLog("Starting Modal timer");
- console.log ("openModal:Cancelling timer");
+ //console.log ("openModal:Cancelling timer");
$interval.cancel(intervalHandleMontage);
$interval.cancel(intervalHandleAlarmStatus);
@@ -668,24 +637,24 @@ function initPackery()
$scope.ptzMoveCommand = "";
$scope.ptzStopCommand = "";
-
+
$scope.zoomInCommand = "";
$scope.zoomOutCommand = "";
$scope.zoomStopCommand = "zoomStop";
$scope.canZoom = false;
-
+
$scope.presetOn = false;
-
+
$scope.connKey = (Math.floor((Math.random() * 999999) + 1)).toString();
- $scope.isControllable = controllable;
+ $scope.isControllable = controllable;
$scope.refMonitor = monitor;
-
+
// This is a modal to show the monitor footage
// We need to switch to always awake if set so the feed doesn't get interrupted
ZMDataModel.setAwake(ZMDataModel.getKeepAwake());
-
+
// This is a modal to show the monitor footage
$ionicModal.fromTemplateUrl('templates/monitors-modal.html', {
@@ -701,10 +670,10 @@ function initPackery()
noBackdrop: true,
duration: zm.loadingTimeout
});
-
-
+
+
// we don't really need this as we have stopped the timer
- // $scope.isModalActive = true;
+ // $scope.isModalActive = true;
//$timeout (function() {pckry.shiftLayout();},zm.packeryTimer);
$scope.modal.show();
@@ -717,10 +686,12 @@ function initPackery()
//
//---------------------------------------------------------------------
- function cleanupOnClose()
- {
+ function cleanupOnClose() {
$scope.modal.remove();
- $timeout (function() {ZMDataModel.zmLog("MontageCtrl:Stopping network pull...");if (ZMDataModel.isForceNetworkStop()) ZMDataModel.stopNetwork();},50);
+ $timeout(function () {
+ ZMDataModel.zmLog("MontageCtrl:Stopping network pull...");
+ if (ZMDataModel.isForceNetworkStop()) ZMDataModel.stopNetwork();
+ }, 50);
$rootScope.rand = Math.floor((Math.random() * 100000) + 1);
$scope.isModalActive = false;
@@ -730,34 +701,34 @@ function initPackery()
// console.log ("closeModal: Cancelling timer");
$interval.cancel(intervalHandleMontage);
$interval.cancel(intervalHandleAlarmStatus);
-
+
intervalHandleMontage = $interval(function () {
loadNotifications();
// console.log ("Refreshing Image...");
}.bind(this), ld.refreshSec * 1000);
-
+
intervalHandleAlarmStatus = $interval(function () {
loadAlarmStatus();
// console.log ("Refreshing Image...");
}.bind(this), 5000);
-
- // $timeout (function() {pckry.shiftLayout();},zm.packeryTimer);
-
-
+
+ // $timeout (function() {pckry.shiftLayout();},zm.packeryTimer);
+
+
}
-
+
$scope.closeModal = function () {
ZMDataModel.zmDebug("MontageCtrl: Close & Destroy Monitor Modal");
cleanupOnClose();
// $scope.isModalActive = false;
// Note: no need to setAwake(false) as needs to be awake
// in montage view
-
-
-
+
+
+
};
-
+
//---------------------------------------------------------------------
@@ -778,8 +749,8 @@ function initPackery()
function onResume() {
-
-
+
+
}
$scope.openMenu = function () {
@@ -791,240 +762,236 @@ function initPackery()
};
$scope.$on('$destroy', function () {
-
+
});
$scope.$on('$ionicView.loaded', function () {
- // console.log("**VIEW ** Montage Ctrl Loaded");
+ // console.log("**VIEW ** Montage Ctrl Loaded");
});
-
+
$scope.$on('$ionicView.leave', function () {
- // console.log("**VIEW ** Montage Ctrl Left, force removing modal");
+ // console.log("**VIEW ** Montage Ctrl Left, force removing modal");
if ($scope.modal) $scope.modal.remove();
});
-
-
-
+
+
+
function orientationChanged() {
- ZMDataModel.zmDebug("Detected orientation change, redoing packery resize");
- $timeout(function () {
- pckry.onresize();
+ ZMDataModel.zmDebug("Detected orientation change, redoing packery resize");
+ $timeout(function () {
+ pckry.onresize();
+ });
+ }
+
+ $scope.toggleSizeButtons = function () {
+
+ $scope.showSizeButtons = !$scope.showSizeButtons;
+ ZMDataModel.zmDebug("toggling size buttons:" + $scope.showSizeButtons);
+ };
+
+ // minimal has to be beforeEnter or header won't hide
+ $scope.$on('$ionicView.beforeEnter', function () {
+ $scope.minimal = $stateParams.minimal;
+ //console.log ("**************** MINIMAL ENTER " + $scope.minimal);
+ $scope.zmMarginTop = $scope.minimal ? 0 : 15;
+
+
+
+
});
-}
-
-$scope.toggleSizeButtons = function()
-{
-
- $scope.showSizeButtons = !$scope.showSizeButtons;
- ZMDataModel.zmDebug ("toggling size buttons:"+$scope.showSizeButtons);
-};
-
-// minimal has to be beforeEnter or header won't hide
-$scope.$on ('$ionicView.beforeEnter', function() {
- $scope.minimal = $stateParams.minimal;
- //console.log ("**************** MINIMAL ENTER " + $scope.minimal);
- $scope.zmMarginTop = $scope.minimal ? 0 : 15;
-
-
-
-
-});
-
-$scope.$on('$ionicView.afterEnter', function () {
- ZMDataModel.zmDebug("Setting image mode to snapshot, will change to image when packery is all done");
- $scope.allImagesLoaded = false;
- $scope.isDragabillyOn = false;
- $scope.allImagesLoaded = false;
- $scope.gridScale = "grid-item-50";
- $scope.LoginData = ZMDataModel.getLogin();
- $scope.monLimit = $scope.LoginData.maxMontage;
- $scope.showSizeButtons = false;
-
- $scope.monitors = message;
- $scope.MontageMonitors = angular.copy(message);
- $scope.sliderChanging = false;
- loginData = ZMDataModel.getLogin();
+ $scope.$on('$ionicView.afterEnter', function () {
+ ZMDataModel.zmDebug("Setting image mode to snapshot, will change to image when packery is all done");
+ $scope.allImagesLoaded = false;
+ $scope.isDragabillyOn = false;
+ $scope.allImagesLoaded = false;
+ $scope.gridScale = "grid-item-50";
+ $scope.LoginData = ZMDataModel.getLogin();
+ $scope.monLimit = $scope.LoginData.maxMontage;
+ $scope.showSizeButtons = false;
- $scope.isRefresh = $stateParams.isRefresh;
- sizeInProgress = false;
- $scope.imageStyle = true;
- intervalHandleMontage = "";
- $scope.isModalActive = false;
- $scope.isReorder = false;
- $ionicSideMenuDelegate.canDragContent($scope.minimal ? true : true);
-
-
- //$scope.areImagesLoading = true;
+ $scope.monitors = message;
+ $scope.MontageMonitors = angular.copy(message);
+ $scope.sliderChanging = false;
+ loginData = ZMDataModel.getLogin();
+
+ $scope.isRefresh = $stateParams.isRefresh;
+ sizeInProgress = false;
+ $scope.imageStyle = true;
+ intervalHandleMontage = "";
+ $scope.isModalActive = false;
+ $scope.isReorder = false;
+
+ $ionicSideMenuDelegate.canDragContent($scope.minimal ? true : true);
+
+
+ //$scope.areImagesLoading = true;
var ld = ZMDataModel.getLogin();
//console.log("Setting Awake to " + ZMDataModel.getKeepAwake());
ZMDataModel.setAwake(ZMDataModel.getKeepAwake());
$interval.cancel(intervalHandleMontage);
$interval.cancel(intervalHandleAlarmStatus);
-
+
intervalHandleMontage = $interval(function () {
loadNotifications();
// console.log ("Refreshing Image...");
}.bind(this), ld.refreshSec * 1000);
-
+
intervalHandleAlarmStatus = $interval(function () {
loadAlarmStatus();
// console.log ("Refreshing Image...");
}.bind(this), 5000);
-
+
loadNotifications();
- if ($scope.MontageMonitors.length == 0) {
- $rootScope.zmPopup = $ionicPopup.alert({
- title: $translate.instant('kNoMonitors'),
- template: $translate.instant('kCheckCredentials')
- });
- $ionicHistory.nextViewOptions({
- disableBack: true
- });
- $state.go("login", {
- "wizard": false
- });
- return;
- }
+ if ($scope.MontageMonitors.length == 0) {
+ $rootScope.zmPopup = $ionicPopup.alert({
+ title: $translate.instant('kNoMonitors'),
+ template: $translate.instant('kCheckCredentials')
+ });
+ $ionicHistory.nextViewOptions({
+ disableBack: true
+ });
+ $state.go("login", {
+ "wizard": false
+ });
+ return;
+ }
- ld = ZMDataModel.getLogin();
+ ld = ZMDataModel.getLogin();
- $rootScope.authSession = "undefined";
- $ionicLoading.show({
- template: $translate.instant('kNegotiatingStreamAuth'),
- animation: 'fade-in',
- showBackdrop: true,
- duration: zm.loadingTimeout,
- maxWidth: 300,
- showDelay: 0
- });
+ $rootScope.authSession = "undefined";
+ $ionicLoading.show({
+ template: $translate.instant('kNegotiatingStreamAuth'),
+ animation: 'fade-in',
+ showBackdrop: true,
+ duration: zm.loadingTimeout,
+ maxWidth: 300,
+ showDelay: 0
+ });
- ZMDataModel.zmLog("Inside Montage Ctrl:We found " + $scope.monitors.length + " monitors");
+ ZMDataModel.zmLog("Inside Montage Ctrl:We found " + $scope.monitors.length + " monitors");
- // set them all at 50% for packery
- for (var i = 0; i < $scope.MontageMonitors.length; i++) {
- $scope.MontageMonitors[i].Monitor.gridScale = "50";
- $scope.MontageMonitors[i].Monitor.selectStyle = "";
- $scope.MontageMonitors[i].Monitor.alarmState='color:rgba(0,0,0,0);';
+ // set them all at 50% for packery
+ for (var i = 0; i < $scope.MontageMonitors.length; i++) {
+ $scope.MontageMonitors[i].Monitor.gridScale = "50";
+ $scope.MontageMonitors[i].Monitor.selectStyle = "";
+ $scope.MontageMonitors[i].Monitor.alarmState = 'color:rgba(0,0,0,0);';
- }
+ }
- $rootScope.validMonitorId = $scope.monitors[0].Monitor.Id;
- ZMDataModel.getAuthKey($rootScope.validMonitorId, (Math.floor((Math.random() * 999999) + 1)).toString())
- .then(function (success) {
- $ionicLoading.hide();
- //console.log(success);
- $rootScope.authSession = success;
- ZMDataModel.zmLog("Stream authentication construction: " +
- $rootScope.authSession);
+ $rootScope.validMonitorId = $scope.monitors[0].Monitor.Id;
+ ZMDataModel.getAuthKey($rootScope.validMonitorId, (Math.floor((Math.random() * 999999) + 1)).toString())
+ .then(function (success) {
+ $ionicLoading.hide();
+ //console.log(success);
+ $rootScope.authSession = success;
+ ZMDataModel.zmLog("Stream authentication construction: " +
+ $rootScope.authSession);
- },
- function (error) {
+ },
+ function (error) {
- $ionicLoading.hide();
- ZMDataModel.zmDebug("MontageCtrl: Error in authkey retrieval " + error);
- //$rootScope.authSession="";
- ZMDataModel.zmLog("MontageCtrl: Error returned Stream authentication construction. Retaining old value of: " + $rootScope.authSession);
- });
+ $ionicLoading.hide();
+ ZMDataModel.zmDebug("MontageCtrl: Error in authkey retrieval " + error);
+ //$rootScope.authSession="";
+ ZMDataModel.zmLog("MontageCtrl: Error returned Stream authentication construction. Retaining old value of: " + $rootScope.authSession);
+ });
- console.log("**VIEW ** Montage Ctrl AFTER ENTER");
+ //console.log("**VIEW ** Montage Ctrl AFTER ENTER");
window.addEventListener("resize", orientationChanged, false);
- $timeout ( function () {initPackery(); },zm.packeryTimer);
+ $timeout(function () {
+ initPackery();
+ }, zm.packeryTimer);
document.addEventListener("pause", onPause, false);
document.addEventListener("resume", onResume, false);
-
-
-
-});
-
+
+
+
+ });
+
$scope.$on('$ionicView.beforeLeave', function () {
- // console.log("**VIEW ** Montage Ctrl Left, force removing modal");
-
- console.log ("beforeLeave:Cancelling timer");
+ // console.log("**VIEW ** Montage Ctrl Left, force removing modal");
+
+ //console.log ("beforeLeave:Cancelling timer");
$interval.cancel(intervalHandleMontage);
$interval.cancel(intervalHandleAlarmStatus);
pckry.destroy();
- window.removeEventListener("resize", orientationChanged, false);
-
-
+ window.removeEventListener("resize", orientationChanged, false);
+
+
// make sure this is applied in scope digest to stop network pull
// thats why we are doing it beforeLeave
-
- if (ZMDataModel.isForceNetworkStop())
- {
- ZMDataModel.zmLog ("MontageCtrl:Stopping network pull...");
+
+ if (ZMDataModel.isForceNetworkStop()) {
+ ZMDataModel.zmLog("MontageCtrl:Stopping network pull...");
ZMDataModel.stopNetwork();
-
+
}
-
+
});
-
-
-
+
+
+
$scope.$on('$ionicView.unloaded', function () {
-
+
});
-
- $scope.resetSizes = function()
- {
+
+ $scope.resetSizes = function () {
var somethingReset = false;
- for (var i=0; i< $scope.MontageMonitors.length; i++)
- {
- if ($scope.isDragabillyOn)
- {
- if ($scope.MontageMonitors[i].Monitor.selectStyle=="dragborder-selected")
- {
- $scope.MontageMonitors[i].Monitor.gridScale="50";
- somethingReset = true;
- }
- }
- else
- {
- $scope.MontageMonitors[i].Monitor.gridScale="50";
- // somethingReset = true;
+ for (var i = 0; i < $scope.MontageMonitors.length; i++) {
+ if ($scope.isDragabillyOn) {
+ if ($scope.MontageMonitors[i].Monitor.selectStyle == "dragborder-selected") {
+ $scope.MontageMonitors[i].Monitor.gridScale = "50";
+ somethingReset = true;
+ }
+ } else {
+ $scope.MontageMonitors[i].Monitor.gridScale = "50";
+ // somethingReset = true;
}
}
if (!somethingReset && $scope.isDragabillyOn) // nothing was selected
{
- for (i=0; i< $scope.MontageMonitors.length; i++){$scope.MontageMonitors[i].Monitor.gridScale="50";}
+ for (i = 0; i < $scope.MontageMonitors.length; i++) {
+ $scope.MontageMonitors[i].Monitor.gridScale = "50";
+ }
}
-
- $timeout (function()
- {
- pckry.reloadItems();
-
- pckry.once( 'layoutComplete', function() {
- console.log ("Layout complete");
- var positions = pckry.getShiftPositions('data-item-id');
- console.log ("POSITIONS MAP " + JSON.stringify(positions));
- var ld = ZMDataModel.getLogin();
- ld.packeryPositions = JSON.stringify(positions);
- ZMDataModel.setLogin(ld);
- // $scope.slider.monsize = 2;
- });
- //layout(pckry);
- $timeout (function(){pckry.layout();},zm.packeryTimer); // force here - no shiftlayout
-
-
- },100);
-
+
+ $timeout(function () {
+ pckry.reloadItems();
+
+ pckry.once('layoutComplete', function () {
+ //console.log ("Layout complete");
+ var positions = pckry.getShiftPositions('data-item-id');
+ //console.log ("POSITIONS MAP " + JSON.stringify(positions));
+ var ld = ZMDataModel.getLogin();
+ ld.packeryPositions = JSON.stringify(positions);
+ ZMDataModel.setLogin(ld);
+ // $scope.slider.monsize = 2;
+ });
+ //layout(pckry);
+ $timeout(function () {
+ pckry.layout();
+ }, zm.packeryTimer); // force here - no shiftlayout
+
+
+ }, 100);
+
};
-
-
- function layout(pckry)
- {
+
+
+ function layout(pckry) {
pckry.shiftLayout();
}
@@ -1036,95 +1003,89 @@ $scope.$on('$ionicView.afterEnter', function () {
//---------------------------------------------------------
$scope.sliderChanged = function (dirn) {
-
- if ($scope.sliderChanging)
- {
- // console.log ("too fast my friend");
+
+ if ($scope.sliderChanging) {
+ // console.log ("too fast my friend");
//$scope.slider.monsize = oldSliderVal;
- // return;
+ // return;
}
-
+
$scope.sliderChanging = true;
-
- var somethingReset = false;
-
- // this only changes items that are selected
- for (var i=0; i< $scope.MontageMonitors.length; i++)
- {
-
- var curVal = parseInt($scope.MontageMonitors[i].Monitor.gridScale);
- curVal = curVal + (10 * dirn);
- if (curVal < 10) curVal=10;
- if (curVal >100) curVal = 100;
- //console.log ("For Index: " + i + " From: " + $scope.MontageMonitors[i].Monitor.gridScale + " To: " + curVal);
-
- if ($scope.isDragabillyOn)
- {
+
+ var somethingReset = false;
+
+ // this only changes items that are selected
+ for (var i = 0; i < $scope.MontageMonitors.length; i++) {
+
+ var curVal = parseInt($scope.MontageMonitors[i].Monitor.gridScale);
+ curVal = curVal + (10 * dirn);
+ if (curVal < 10) curVal = 10;
+ if (curVal > 100) curVal = 100;
+ //console.log ("For Index: " + i + " From: " + $scope.MontageMonitors[i].Monitor.gridScale + " To: " + curVal);
+
+ if ($scope.isDragabillyOn) {
// only do this for selected monitors
- if ($scope.MontageMonitors[i].Monitor.selectStyle=="dragborder-selected")
- {
-
- $scope.MontageMonitors[i].Monitor.gridScale= curVal;
+ if ($scope.MontageMonitors[i].Monitor.selectStyle == "dragborder-selected") {
+
+ $scope.MontageMonitors[i].Monitor.gridScale = curVal;
somethingReset = true;
}
- }
- else
- {
- $scope.MontageMonitors[i].Monitor.gridScale= curVal;
- //somethingReset = true;
-
- }
-
- }
-
- // this changes all items if none were selected
- if (!somethingReset && $scope.isDragabillyOn) // nothing was selected
- {
- for (i=0; i< $scope.MontageMonitors.length; i++)
- {
- var cv = parseInt($scope.MontageMonitors[i].Monitor.gridScale);
- cv = cv + (10 * dirn);
- if (cv < 10) cv=10;
- if (cv >100) cv = 100;
- $scope.MontageMonitors[i].Monitor.gridScale= cv;
- }
+ } else {
+ $scope.MontageMonitors[i].Monitor.gridScale = curVal;
+ //somethingReset = true;
+
}
-
-
- //pckry.reloadItems();
-
- pckry.once( 'layoutComplete', function() {
- $timeout(function () {
- var positions = pckry.getShiftPositions('data-item-id');
- console.log ("POSITIONS MAP " + JSON.stringify(positions));
- var ld = ZMDataModel.getLogin();
- ld.packeryPositions = JSON.stringify(positions);
- ZMDataModel.setLogin(ld);
- $ionicLoading.hide();
- $scope.sliderChanging = false;
- },zm.packeryTimer);
- });
-
-
-
- if (!somethingReset)
- {
- console.log (">>>SOMETHING NOT RESET");
- $timeout(function() {pckry.layout();},zm.packeryTimer);
- }
- else
- {
-
- console.log (">>>SOMETHING RESET");
- $timeout(function() {layout(pckry);},zm.packeryTimer);
- }
-
-
-
-
+
+ }
+
+ // this changes all items if none were selected
+ if (!somethingReset && $scope.isDragabillyOn) // nothing was selected
+ {
+ for (i = 0; i < $scope.MontageMonitors.length; i++) {
+ var cv = parseInt($scope.MontageMonitors[i].Monitor.gridScale);
+ cv = cv + (10 * dirn);
+ if (cv < 10) cv = 10;
+ if (cv > 100) cv = 100;
+ $scope.MontageMonitors[i].Monitor.gridScale = cv;
+ }
+ }
+
+
+ //pckry.reloadItems();
+
+ pckry.once('layoutComplete', function () {
+ $timeout(function () {
+ var positions = pckry.getShiftPositions('data-item-id');
+ //console.log ("POSITIONS MAP " + JSON.stringify(positions));
+ var ld = ZMDataModel.getLogin();
+ ld.packeryPositions = JSON.stringify(positions);
+ ZMDataModel.setLogin(ld);
+ $ionicLoading.hide();
+ $scope.sliderChanging = false;
+ }, zm.packeryTimer);
+ });
+
+
+
+ if (!somethingReset) {
+ //console.log (">>>SOMETHING NOT RESET");
+ $timeout(function () {
+ pckry.layout();
+ }, zm.packeryTimer);
+ } else {
+
+ //console.log (">>>SOMETHING RESET");
+ $timeout(function () {
+ layout(pckry);
+ }, zm.packeryTimer);
+ }
+
+
+
+
};
-
-
+
+
$scope.$on('$ionicView.afterEnter', function () {
// This rand is really used to reload the monitor image in img-src so it is not cached
@@ -1141,7 +1102,7 @@ $scope.$on('$ionicView.afterEnter', function () {
$scope.doRefresh = function () {
- // console.log("***Pull to Refresh, recomputing Rand");
+ // console.log("***Pull to Refresh, recomputing Rand");
ZMDataModel.zmLog("Reloading view for montage view, recomputing rand");
$rootScope.rand = Math.floor((Math.random() * 100000) + 1);
$scope.monitors = [];
@@ -1156,4 +1117,4 @@ $scope.$on('$ionicView.afterEnter', function () {
};
-}]);
+}]); \ No newline at end of file