aboutsummaryrefslogtreecommitdiff
path: root/src/main/webapp/apps/frontPageApp
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2013-01-04 10:18:56 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2013-01-04 10:18:56 +0100
commit4a6c9c52d006ecb717bae7d9b502d9b661a08ccd (patch)
tree2b31f40d854f137a960933f5e2d99ebb98f48935 /src/main/webapp/apps/frontPageApp
parent5c8c3467906d996c04210cc8350edbd027ccc32a (diff)
downloadesper-testing-4a6c9c52d006ecb717bae7d9b502d9b661a08ccd.tar.gz
esper-testing-4a6c9c52d006ecb717bae7d9b502d9b661a08ccd.tar.bz2
esper-testing-4a6c9c52d006ecb717bae7d9b502d9b661a08ccd.tar.xz
esper-testing-4a6c9c52d006ecb717bae7d9b502d9b661a08ccd.zip
o Using the PagingTableService on the front page and person apps.
Diffstat (limited to 'src/main/webapp/apps/frontPageApp')
-rwxr-xr-x[-rw-r--r--]src/main/webapp/apps/frontPageApp/frontPage.html36
-rwxr-xr-x[-rw-r--r--]src/main/webapp/apps/frontPageApp/frontPageApp.js67
2 files changed, 31 insertions, 72 deletions
diff --git a/src/main/webapp/apps/frontPageApp/frontPage.html b/src/main/webapp/apps/frontPageApp/frontPage.html
index 4523e6f..5cdea9a 100644..100755
--- a/src/main/webapp/apps/frontPageApp/frontPage.html
+++ b/src/main/webapp/apps/frontPageApp/frontPage.html
@@ -3,13 +3,33 @@
<div class="page-header">
<h1>Newcomers</h1>
</div>
-
- <style>
- .personsGrid {
- height: 400px;
- }
- </style>
-
- <div class="personsGrid" ng-grid="personsGridOptions"><!-- --></div>
+ <table class="table">
+ <thead>
+ <tr>
+ <th>Name</th>
+ <th>Badges</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="person in persons.rows">
+ <td><a href="/person/{{person.uuid}}">{{person.name}}</a></td>
+ <td>{{person.badges.length}}</td>
+ </tr>
+ </tbody>
+ <tfoot>
+ <tr>
+ <td colspan="2">
+ <ul class="pager">
+ <li class="previous" ng-class="{disabled: persons.startIndex == 0}">
+ <a ng-click="persons.prev()">&larr; Older</a>
+ </li>
+ <li class="next">
+ <a ng-click="persons.next()">Newer &rarr;</a>
+ </li>
+ </ul>
+ </td>
+ </tr>
+ </tfoot>
+ </table>
</div>
diff --git a/src/main/webapp/apps/frontPageApp/frontPageApp.js b/src/main/webapp/apps/frontPageApp/frontPageApp.js
index c4fa0cc..21bc91f 100644..100755
--- a/src/main/webapp/apps/frontPageApp/frontPageApp.js
+++ b/src/main/webapp/apps/frontPageApp/frontPageApp.js
@@ -1,71 +1,10 @@
'use strict';
-var frontPageApp = angular.module('frontPageApp', ['ngGrid', 'person']).config(function ($routeProvider, $locationProvider) {
+var frontPageApp = angular.module('frontPageApp', ['ngGrid', 'person', 'pagingTableService']).config(function ($routeProvider, $locationProvider) {
$routeProvider.
when('/', {controller: FrontPageCtrl, templateUrl: '/apps/frontPageApp/frontPage.html?noCache=' + noCache});
});
-function FrontPageCtrl($scope, $http, Person) {
- $scope.persons = [];
-
- $scope.pagingOptions = {
- pageSizes: [10],
- pageSize: 10,
- totalServerItems: 0,
- currentPage: 1
- };
-
- $scope.personsGridOptions = {
- data: 'persons',
- displayFooter: true,
- enablePaging: true,
- enableRowReordering: false,
- enableColumnReordering: false,
- showFilter: false,
- showColumnMenu: false,
- canSelectRows: false,
- displaySelectionCheckbox: false,
- pagingOptions: $scope.pagingOptions,
- columnDefs: [
- {
- field: 'name',
- displayName: 'Name',
- cellTemplate: '<a href="/person/{{row.getProperty(\'uuid\')}}">{{row.getProperty(col.field)}}</a>'
- },
- {
- field: 'badges',
- displayName: 'Badges',
- cellTemplate: '<div>{{row.getProperty(col.field).length}}</div>'
- }
- ]
- };
-
- $scope.setPagingData = function(data, page, pageSize){
-// $scope.persons = data.slice((page - 1) * pageSize, page * pageSize);
- $scope.persons = data;
-// $scope.personsGridOptions.totalServerItems = data.length;
- window.x = $scope.personsGridOptions;
- if (!$scope.$$phase) {
- $scope.$apply();
- }
- };
-
- $scope.getPagedDataAsync = function (pageSize, page/*, searchText*/) {
- setTimeout(function () {
-
- Person.query({startIndex: page * pageSize, count: pageSize}, function (persons) {
- $scope.setPagingData(persons, page, pageSize);
- });
- }, 100);
- };
-
- $scope.$watch('pagingOptions', function () {
- $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage);
- }, true);
-
-// $http.get('/resource/core/person-count').success(function(count) {
-// $scope.pagingOptions.totalServerItems = count;
-//
-// $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage);
-// });
+function FrontPageCtrl($scope, Person, PagingTableService) {
+ $scope.persons = PagingTableService.create($scope, PagingTableService.defaultCallback(Person));
}