// Set up the default scope value.\r
this.scope.errorMessage = null;\r
this.scope.name = "";\r
+ //Pagin\r
+ this.scope.totalPages = 4;\r
+ this.scope.curPage = 0;\r
+ this.scope.pageSize = 25;\r
\r
$scope.resources = SchedulerDataViewData;\r
$scope.slots = SchedulerSlotsViewData;\r
//afterAngularRendered();\r
});\r
\r
+ $scope.initSchedulerResources = function (pageSize, filter) {\r
+ for (var k = 0; k < pageSize; k++) {\r
+ if ($scope.resources.length < SchedulerData.length)\r
+ $scope.resources.push(jQuery.extend(true, {}, SchedulerData[k]));\r
+ $scope.resources[k].leases = [];\r
+ }\r
+ $scope.pageSize = pageSize;\r
+ $scope.curPage = 0;\r
+ $scope.totalPages = parseInt(Math.ceil(SchedulerData.length / $scope.pageSize));\r
+ $scope.initSlots(0, SchedulerTotalVisibleCells);\r
+ };\r
+\r
+ $scope.setPage = function(page) {\r
+ var tmpFrm = $scope.pageSize * page;\r
+ var tmpTo = tmpFrm + $scope.pageSize;\r
+ $scope.curPage = page;\r
+ $scope.resources = [];\r
+ for (var k = tmpFrm; k < tmpTo; k++) {\r
+ if ($scope.resources.length < SchedulerData.length)\r
+ $scope.resources.push(jQuery.extend(true, {}, SchedulerData[k]));\r
+ $scope.resources[k].leases = [];\r
+ }\r
+ $scope.initSlots(0, SchedulerTotalVisibleCells);\r
+ };\r
+\r
+ $scope.initSlots = function (from, to) {\r
+ //init\r
+ $scope.slots = [];\r
+ //set\r
+ for (var i = from; i < to; i++) {\r
+ $scope.slots.push(SchedulerSlots[i]);\r
+ for (var j = 0; j < $scope.resources.length; j++) {\r
+ $scope.resources[j].leases.push(SchedulerData[j].leases[i]);\r
+ }\r
+ }\r
+ //apply\r
+ $scope.$apply();\r
+ };\r
+\r
$scope.moveFrontSlot = function(from, to) {\r
//$scope.slots.shift();\r
//$scope.slots.push(SchedulerSlots[to]);\r
});\r
};\r
\r
- $scope.SetSchedulerResources = function (start, to, filter) {\r
- for (var k = start; k < to; k++) {\r
- if ($scope.resources.length < SchedulerData.length)\r
- $scope.resources.push(jQuery.extend(true, {}, SchedulerData[k]));\r
- $scope.resources[k].leases = [];\r
- }\r
- $scope.initSlots(0, SchedulerTotalVisibleCells);\r
+ $scope.getTimes = function (n) {\r
+ return new Array(n);\r
};\r
\r
- $scope.initSlots = function(from, to) {\r
- //init\r
- $scope.slots = [];\r
- //set\r
- for (var i = from; i < to; i++) {\r
- $scope.slots.push(SchedulerSlots[i]);\r
- for (var j = 0; j < $scope.resources.length; j++) {\r
- $scope.resources[j].leases.push(SchedulerData[j].leases[i]);\r
- }\r
- }\r
- //apply\r
- $scope.$apply();\r
- };\r
-\r
-\r
// Return this object reference.\r
return (this);\r
\r
var schedulerTblFirstColWidth = 150;\r
//Some Data\r
var schedulerSlotsPerHour = 6;\r
-var schedulerMaxRows = 25;\r
+var schedulerMaxRows = 12;\r
var SchedulerData = [];\r
var SchedulerSlots = [];\r
var SchedulerDataViewData = [];\r
},\r
on_all_resources_new_record: function (data) {\r
//alert(data.toSource());\r
- if (SchedulerData.length < schedulerMaxRows)\r
+ if (data.exclusive == null)\r
SchedulerData.push({ id: data.urn, index: SchedulerData.length, name: data.hrn, granularity: data.granularity, leases: schedulerGetLeases(60 / schedulerSlotsPerHour), type: data.type });\r
//alert(data.toSource());\r
\r
// no prefix\r
on_filter_added: function (filter) {\r
var tmpScope = angular.element(document.getElementById('SchedulerCtrl')).scope();\r
- tmpScope.SetSchedulerResources(0, schedulerMaxRows, filter);\r
+ tmpScope.initSchedulerResources(schedulerMaxRows, filter);\r
},\r
\r
// ... be sure to list all events here\r
slide: function (event, ui) {\r
//$("#amount").val("$" + ui.values[0] + " - $" + ui.values[1]);\r
//console.log(ui.value);\r
+ var angScope = angular.element(document.getElementById('SchedulerCtrl')).scope();\r
if (_schedulerCurrentCellPosition > ui.value)\r
- angular.element(document.getElementById('SchedulerCtrl')).scope().moveBackSlot(ui.value, ui.value + SchedulerTotalVisibleCells);\r
+ angScope.moveBackSlot(ui.value, ui.value + SchedulerTotalVisibleCells);\r
else if (_schedulerCurrentCellPosition < ui.value)\r
- angular.element(document.getElementById('SchedulerCtrl')).scope().moveFrontSlot(ui.value, ui.value + SchedulerTotalVisibleCells);\r
+ angScope.moveFrontSlot(ui.value, ui.value + SchedulerTotalVisibleCells);\r
_schedulerCurrentCellPosition = ui.value;\r
}\r
});\r
// SchedulerData.push({ name: 'nitos1', leases: schedulerGetLeases(60 / schedulerSlotsPerHour), urn: 'nitos1', type: 'node' });\r
//}\r
var tmpScope = angular.element(document.getElementById('SchedulerCtrl')).scope();\r
- tmpScope.SetSchedulerResources(0, schedulerMaxRows, null);\r
+ tmpScope.initSchedulerResources(schedulerMaxRows, null);\r
},\r
_SetPeriodInPage: function (start, end) {\r
}\r
-<div id="plugin-{{ domid }}-loader" style="text-align:center;">\r
+<div id="plugin-{{ domid }}-loader" style="text-align:center;">\r
<img src="../../static/img/loading-7b6dc55620a355b55b835f6b4c300f9b.gif" alt="loading" style="width:100px;" />\r
<h3>Loading Data...</h3>\r
</div>\r
</tr>\r
</tbody>\r
</table>\r
+ <div class="dataTables_paginate paging_bootstrap">\r
+ <ul class="pagination">\r
+ <li class="prev disabled"><a href="#">← Previous</a></li>\r
+ <li ng-cloak ng-repeat="t in getTimes(totalPages)"><a href="#" ng-click="setPage($index)">{[{$index+1}]}</a></li>\r
+ <li class="next disabled"><a href="#">Next → </a></li>\r
+ </ul>\r
+ </div>\r
</div>\r
{% comment %}\r
<div id="reservation-table-scroll-container">\r