summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
Diffstat (limited to 'www')
-rw-r--r--www/js/MontageHistoryCtrl.js1
-rw-r--r--www/templates/montage-history.html217
2 files changed, 107 insertions, 111 deletions
diff --git a/www/js/MontageHistoryCtrl.js b/www/js/MontageHistoryCtrl.js
index fdfab07c..713b5bc5 100644
--- a/www/js/MontageHistoryCtrl.js
+++ b/www/js/MontageHistoryCtrl.js
@@ -103,6 +103,7 @@ angular.module('zmApp.controllers').controller('zmApp.MontageHistoryCtrl', ['$sc
$scope.MontageMonitors[i].Monitor.seek = true;
}
+
sendCmd(mid, '14', "&offset=" + p)
.then (function(success)
{
diff --git a/www/templates/montage-history.html b/www/templates/montage-history.html
index 48b1665a..89d0a7e7 100644
--- a/www/templates/montage-history.html
+++ b/www/templates/montage-history.html
@@ -1,25 +1,24 @@
<ion-view view-title="{{'kEventMontage' | translate}}" cache-view="false" hide-nav-bar="{{minimal}}">
- <ion-nav-buttons side="left">
- <button class="button button-icon button-clear ion-navicon" ng-click="openMenu()"></button>
- <button class="button button-icon button-clear ion-arrow-move" ng-click="dragToggle();">&nbsp; </button>
- <button data-badge="{{$root.alarmCount}}" class="animated infinite tada button button-icon button-clear ion-ios-bell notification-badge" ng-click="handleAlarms();" ng-if="$root.isAlarm"></button>
- </ion-nav-buttons>
-
- <ion-nav-buttons side="right">
- <button class="button button-icon button-clear ion-loop" ng-click="resetSizes();">&nbsp; </button>
- <button class="button button-icon button-clear ion-plus-round" ng-click="sliderChanged(1);">&nbsp; </button>
- <button class="button button-icon button-clear ion-minus-round" ng-click="sliderChanged(-1);">&nbsp; </button>
- <button data-badge="{{$root.alarmCount}}" class="animated infinite tada button button-icon button-clear ion-ios-bell notification-badge" ng-click="handleAlarms();" ng-if="$root.isAlarm"></button>
- </ion-nav-buttons>
-
- <ion-content scroll-sista has-bouncing="false" style="background-color:#444444" delegate-handle="none" overflow-scroll="false" mouse-wheel-scroll>
- <div class="timeline_text"> {{'kFrom' | translate}}:{{prettifyDateTimeFirst(datetimeValueFrom.value)}} ({{humanizeTime(datetimeValueFrom.value)}})
- <div ng-if="$root.platformOS != 'ios'">({{'kChromeMax' | translate}})</div>
- </div>
- <div class="grid" id="mygrid">
- <div class="grid-sizer grid-item-10"></div>
- <!-- <span ng-repeat="monitor in MontageMonitors|limitTo: monLimit" ng- -->
- <span ng-repeat="monitor in MontageMonitors | onlyEnabledAndEventHas |limitTo: currentLimit">
+ <ion-nav-buttons side="left">
+ <button class="button button-icon button-clear ion-navicon" ng-click="openMenu()"></button>
+ <button class="button button-icon button-clear ion-arrow-move" ng-click="dragToggle();">&nbsp; </button>
+ <button data-badge="{{$root.alarmCount}}" class="animated infinite tada button button-icon button-clear ion-ios-bell notification-badge" ng-click="handleAlarms();" ng-if="$root.isAlarm"></button>
+ </ion-nav-buttons>
+ <ion-nav-buttons side="right">
+ <button class="button button-icon button-clear ion-loop" ng-click="resetSizes();">&nbsp; </button>
+ <button class="button button-icon button-clear ion-plus-round" ng-click="sliderChanged(1);">&nbsp; </button>
+ <button class="button button-icon button-clear ion-minus-round" ng-click="sliderChanged(-1);">&nbsp; </button>
+ <button data-badge="{{$root.alarmCount}}" class="animated infinite tada button button-icon button-clear ion-ios-bell notification-badge" ng-click="handleAlarms();" ng-if="$root.isAlarm"></button>
+ </ion-nav-buttons>
+ <ion-content scroll-sista has-bouncing="false" style="background-color:#444444" delegate-handle="none" overflow-scroll="false" mouse-wheel-scroll>
+ <div class="timeline_text"> {{'kFrom' | translate}}:{{prettifyDateTimeFirst(datetimeValueFrom.value)}} ({{humanizeTime(datetimeValueFrom.value)}})
+
+ <div ng-if="$root.platformOS != 'ios'">({{'kChromeMax' | translate}})</div>
+ </div>
+ <div class="grid" id="mygrid">
+ <div class="grid-sizer grid-item-10"></div>
+ <!-- <span ng-repeat="monitor in MontageMonitors|limitTo: monLimit" ng- -->
+ <span ng-repeat="monitor in MontageMonitors | onlyEnabledAndEventHas |limitTo: currentLimit">
<div ng-if="$root.authSession!='undefined'">
<div ng-if = "monitor.Monitor.eventUrl == 'img/noevent.png' ">
<!-- make sure we don't use id here
@@ -30,10 +29,12 @@
<figcaption class="normal-figcaption" >
&nbsp;
+
<i class="ion-ios-videocam"></i>
{{monitor.Monitor.Name}}&nbsp;
+
</figcaption>
</figure>
</div>
@@ -45,107 +46,101 @@
<figcaption class="normal-figcaption" >
&nbsp;
+
<i class="ion-ios-videocam"></i>
<span style="background-color:red;color:#fff" ng-if="monitor.Monitor.isPaused">&nbsp;
+
<i class="ion-pause"></i>&nbsp;
+
</span> {{monitor.Monitor.Name}}&nbsp;
- <div ng-if="sliderVal.showTimeline && $root.runMode!='lowbw'" style="white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:9px" class="header-event-id" id="{{monitor.Monitor.Id}}-timeline">[{{monitor.Monitor.eid}}]
- <i class="ion-clock"></i> {{prettifyDateTimeFirst(monitor.Monitor.eventUrlTime)}} ({{humanizeTime(monitor.Monitor.eventUrlTime)}})&nbsp;
- </div>
- </figcaption>
- </figure>
- <!-- wait for packery otherwise we get large ranges -->
- <div ng-show="packeryDone">
-
-
-
- <div class="range" style="position:absolute;top:5%;width:95%;z-index:999">
- <input on-release="seek(monitor.Monitor.Id,monitor.Monitor.sliderProgress.progress )" type="range" min="0" max="{{monitor.Monitor.eventDuration}}" ng-model="monitor.Monitor.sliderProgress.progress">
- </div>
- <div id="history_canvas_video">
-
- <canvas style="padding-left:23px;
- padding-right:23px;z-index:998" id="eventchart-{{monitor.Monitor.Id}}" width="auto" height="20"></canvas>
-
-
- </div>
-
-
- </div>
-
- </div>
- </div>
- </div>
- <!-- valid auth session &!background -->
- <div ng-if="!$root.authSession=='undefined' || isBackground()">
- <img image-spinner-src="img/pausevideo.png" />
- </div>
- </span>
-
+ <div ng-if="sliderVal.showTimeline && $root.runMode!='lowbw'" style="white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:9px" class="header-event-id" id="{{monitor.Monitor.Id}}-timeline">[{{monitor.Monitor.eid}}]
+
+ <i class="ion-clock"></i> {{prettifyDateTimeFirst(monitor.Monitor.eventUrlTime)}} ({{humanizeTime(monitor.Monitor.eventUrlTime)}})&nbsp;
- </div>
- <ion-item ng-show="!MontageMonitors.length"> {{'kNoMonitors' | translate }} </ion-item>
- </ion-content>
- <div class="bwmode" ng-if="$root.runMode=='lowbw'"> {{ 'kLowBWDisplay' | translate }} </div>
- <div ng-show="minimal">
- <nav mfb-menu position="br" effect="zoomin" label="collapse" active-icon="ion-chevron-down" resting-icon="ion-chevron-up" toggling-method="click">
- <button mfb-button icon="ion-arrow-expand" label="increase size" ng-click="changeSize(-1)"></button>
- <button mfb-button icon="ion-arrow-shrink" label="decrease size" ng-click="changeSize(1)"></button>
- <button mfb-button icon="ion-refresh" label="refresh" ng-click="reloadView();"></button>
- <button mfb-button icon="ion-close" label="exit full screen" ng-click="switchMinimal()"></button>
- </nav>
- <span class="modal-alarm-badge">
+ </div>
+ </figcaption>
+ </figure>
+ <!-- wait for packery otherwise we get large ranges -->
+ <div ng-show="packeryDone">
+ <div class="range" style="position:absolute;top:5%;width:95%;z-index:999">
+ <input on-release="seek(monitor.Monitor.Id,monitor.Monitor.sliderProgress.progress )" type="range" min="0" max="{{monitor.Monitor.eventDuration}}" ng-model="monitor.Monitor.sliderProgress.progress">
+ </div>
+ <div id="history_canvas_video">
+ <canvas style="padding-left:23px;
+ padding-right:23px;z-index:998" id="eventchart-{{monitor.Monitor.Id}}" width="auto" height="20"></canvas>
+ </div>
+ </div>
+ <div ng-if=
+"monitor.Monitor.seek" style="position:absolute;top:0px; left: 0px; width:100%;height:100%; background-color:rgba(0,0,0,0.3); z-index:99999"><div style="position:relative;top:50%;text-align:center;color:white;background-color:rgba(0,0,0,0.5);">{{'kPleaseWait' | translate}}</div></div>
+ </div>
+ </div>
+ </div>
+ <!-- valid auth session &!background -->
+ <div ng-if="!$root.authSession=='undefined' || isBackground()">
+ <img image-spinner-src="img/pausevideo.png" />
+ </div>
+ </span>
+ </div>
+ <ion-item ng-show="!MontageMonitors.length"> {{'kNoMonitors' | translate }} </ion-item>
+ </ion-content>
+ <div class="bwmode" ng-if="$root.runMode=='lowbw'"> {{ 'kLowBWDisplay' | translate }} </div>
+ <div ng-show="minimal">
+ <nav mfb-menu position="br" effect="zoomin" label="collapse" active-icon="ion-chevron-down" resting-icon="ion-chevron-up" toggling-method="click">
+ <button mfb-button icon="ion-arrow-expand" label="increase size" ng-click="changeSize(-1)"></button>
+ <button mfb-button icon="ion-arrow-shrink" label="decrease size" ng-click="changeSize(1)"></button>
+ <button mfb-button icon="ion-refresh" label="refresh" ng-click="reloadView();"></button>
+ <button mfb-button icon="ion-close" label="exit full screen" ng-click="switchMinimal()"></button>
+ </nav>
+ <span class="modal-alarm-badge">
<a data-badge="{{$root.alarmCount}}" class="animated infinite tada button icon ion-ios-bell notification-badge button-assertive"
ng-click="handleAlarmsWhileMinimized();" ng-if="$root.isAlarm"></a>
</span>
- </div>
- <ion-pull-up-footer class="zmPullup" on-expand="footerExpand()" on-minimize="footerCollapse()" on-collapse="footerCollapse()" initial-state="minimized" default-behavior="expand">
- <ion-pull-up-handle width="100" height="25" toggle="ion-chevron-up ion-chevron-down" style="border-radius: 25px 25px 0 0">
- <i class="icon ion-chevron-up"></i>
- </ion-pull-up-handle>
- <ion-pull-up-bar>
- <h1 class="title" ion-pull-up-trigger>{{'kEventMontage' | translate}}</h1>
- </ion-pull-up-bar>
- <ion-pull-up-content scroll="true">
- <div class="list list-inset">
-
- <div class="item item-divider">{{'kTimeline' | translate}}</div>
-
-
- <div class="item item-input-inset"> {{'kFrom'|translate}}:&nbsp;
- <div class="row">
- <div class="col col-50">
- <label class="item-input-wrapper">
- <input ng-change="hrsChanged()" type="tel" placeholder="hours" ng-model="datetimeValueFrom.hrs">
- </label>
- </div>
- <div class="col col-50">
+ </div>
+ <ion-pull-up-footer class="zmPullup" on-expand="footerExpand()" on-minimize="footerCollapse()" on-collapse="footerCollapse()" initial-state="minimized" default-behavior="expand">
+ <ion-pull-up-handle width="100" height="25" toggle="ion-chevron-up ion-chevron-down" style="border-radius: 25px 25px 0 0">
+ <i class="icon ion-chevron-up"></i>
+ </ion-pull-up-handle>
+ <ion-pull-up-bar>
+ <h1 class="title" ion-pull-up-trigger>{{'kEventMontage' | translate}}</h1>
+ </ion-pull-up-bar>
+ <ion-pull-up-content scroll="true">
+ <div class="list list-inset">
+ <div class="item item-divider">{{'kTimeline' | translate}}</div>
+ <div class="item item-input-inset"> {{'kFrom'|translate}}:&nbsp;
+
+ <div class="row">
+ <div class="col col-50">
+ <label class="item-input-wrapper">
+ <input ng-change="hrsChanged()" type="tel" placeholder="hours" ng-model="datetimeValueFrom.hrs">
+ </label>
+ </div>
+ <div class="col col-50">
&nbsp;{{'kEventHistHrs' | translate}}
</div>
- </div>
+ </div>
+ </div>
+ <ion-item>
+ <div ion-datetime-picker title="From" am-pm={{!loginData.use24hr}} ng-model="datetimeValueFrom.value" ng-change="dateChanged()">
+ <b>{{'kFrom' | translate }}: </b>{{datetimeValueFrom.value | date: timeFormat}}
- </div>
-
- <ion-item>
- <div ion-datetime-picker title="From" am-pm={{!loginData.use24hr}} ng-model="datetimeValueFrom.value" ng-change="dateChanged()">
- <b>{{'kFrom' | translate }}: </b>{{datetimeValueFrom.value | date: timeFormat}}
- </div> ({{humanizeTime(datetimeValueFrom.value)}})
- </ion-item>
- <div class="row">
- <div class="col col-75">
- <br/>
- <div style="width:90%;color:black;">
- <input ng-model="sliderVal.rate" type="text" id="mySlider6" slider options="slider_modal_options_rate" />
- </div>
- <br/>
- </div>
- <div class="col col-25" style="background-color:#AEA8D3;text-align:center"> {{'kSpeed' | translate }} </div>
- </div>
- <!--<ion-item><div ion-datetime-picker am-pm={{!loginData.use24hr}} ng-model="datetimeValueTo.value"><b>{{'kTo' | translate}}: </b>{{datetimeValueTo.value | date: timeFormat}}
+ </div> ({{humanizeTime(datetimeValueFrom.value)}})
+
+ </ion-item>
+ <div class="row">
+ <div class="col col-75">
+ <br/>
+ <div style="width:90%;color:black;">
+ <input ng-model="sliderVal.rate" type="text" id="mySlider6" slider options="slider_modal_options_rate" />
+ </div>
+ <br/>
+ </div>
+ <div class="col col-25" style="background-color:#AEA8D3;text-align:center"> {{'kSpeed' | translate }} </div>
+ </div>
+ <!--<ion-item><div ion-datetime-picker am-pm={{!loginData.use24hr}} ng-model="datetimeValueTo.value"><b>{{'kTo' | translate}}: </b>{{datetimeValueTo.value | date: timeFormat}}
</div></ion-item>-->
- </div>
- </ion-pull-up-content>
- </ion-pull-up-footer>
-</ion-view> \ No newline at end of file
+ </div>
+ </ion-pull-up-content>
+ </ion-pull-up-footer>
+ </ion-view> \ No newline at end of file