aboutsummaryrefslogtreecommitdiff
path: root/src/main/webapp
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/webapp')
-rwxr-xr-xsrc/main/webapp/apps/app.js3
-rw-r--r--src/main/webapp/apps/core/CoreResources.js2
-rwxr-xr-xsrc/main/webapp/apps/frontPageApp/badge.html30
-rwxr-xr-xsrc/main/webapp/apps/frontPageApp/frontPageApp.js8
4 files changed, 41 insertions, 2 deletions
diff --git a/src/main/webapp/apps/app.js b/src/main/webapp/apps/app.js
index 8c683b6..068f454 100755
--- a/src/main/webapp/apps/app.js
+++ b/src/main/webapp/apps/app.js
@@ -55,7 +55,8 @@ directives.directive('badge', function () {
' <i class="icon-user"></i>' +
'</span>' +
' awarded to ' +
- '<a href="/#/person/{{badgeDetail.person.uuid}}">{{badgeDetail.person.name}}</a>'
+ '<a href="/#/person/{{badgeDetail.person.uuid}}">{{badgeDetail.person.name}}</a>. ' +
+ '<a href="/#/badge/{{badgeDetail.badge.uuid}}">More</a>'
}
});
diff --git a/src/main/webapp/apps/core/CoreResources.js b/src/main/webapp/apps/core/CoreResources.js
index aec6a15..b258c85 100644
--- a/src/main/webapp/apps/core/CoreResources.js
+++ b/src/main/webapp/apps/core/CoreResources.js
@@ -19,7 +19,7 @@ function BuildParticipant($resource) {
angular.module('buildParticipant', ['ngResource']).factory('BuildParticipant', BuildParticipant);
function Badge($resource) {
- return $resource('/resource/core/badge');
+ return $resource('/resource/core/badge/:uuid', {uuid: '@uuid'});
}
angular.module('badge', ['ngResource']).factory('Badge', Badge);
diff --git a/src/main/webapp/apps/frontPageApp/badge.html b/src/main/webapp/apps/frontPageApp/badge.html
new file mode 100755
index 0000000..92fc7ae
--- /dev/null
+++ b/src/main/webapp/apps/frontPageApp/badge.html
@@ -0,0 +1,30 @@
+<div class="container">
+
+ <navbar/>
+
+ <div class="page-header">
+ <h1>Badge</h1>
+ </div>
+
+ <div class="row">
+ <div class="span12">
+ The badge <badge-span badge="badge.badge"></badge-span> was awarded to <person-link person="badge.person"></person-link> at
+ {{badge.badge.createdDate | date:'medium'}}.
+ </div>
+ </div>
+
+ <div class="row" ng-switch="badge.badge.name">
+ <div class="span12" ng-switch-when="UNBREAKABLE">
+ <h2>Details</h2>
+ <p>
+ The badge was awarded for having {{badge.personalBadge.builds.length}} successful builds in a row:
+ </p>
+ <ul class="unstyled">
+ <li ng-repeat="b in badge.personalBadge.builds">
+ <a class="btn" href="/build/{{b}}">{{$index + 1}} <i class="icon-chevron-right"></i></a>
+ </li>
+ </ul>
+ </div>
+ </div>
+
+</div>
diff --git a/src/main/webapp/apps/frontPageApp/frontPageApp.js b/src/main/webapp/apps/frontPageApp/frontPageApp.js
index a67e2dc..6f80d0f 100755
--- a/src/main/webapp/apps/frontPageApp/frontPageApp.js
+++ b/src/main/webapp/apps/frontPageApp/frontPageApp.js
@@ -4,6 +4,7 @@ var frontPageApp = angular.module('frontPageApp', ['ngGrid', 'person', 'badge',
$routeProvider.
when('/', {controller: FrontPageCtrl, templateUrl: '/apps/frontPageApp/frontPage.html?noCache=' + noCache}).
when('/badge/', {controller: BadgeListCtrl, templateUrl: '/apps/frontPageApp/badgeList.html?noCache=' + noCache}).
+ when('/badge/:badgeUuid', {controller: BadgeCtrl, templateUrl: '/apps/frontPageApp/badge.html?noCache=' + noCache}).
when('/person/', {controller: PersonListCtrl, templateUrl: '/apps/frontPageApp/personList.html?noCache=' + noCache}).
when('/person/:personUuid', {controller: PersonCtrl, templateUrl: '/apps/frontPageApp/person.html?noCache=' + noCache}).
when('/build/', {controller: BuildListCtrl, templateUrl: '/apps/frontPageApp/buildList.html?noCache=' + noCache});
@@ -56,6 +57,13 @@ function BadgeListCtrl($scope, Badge, PagingTableService) {
$scope.badgeGroups = [];
}
+function BadgeCtrl($scope, $routeParams, Badge) {
+ var badgeUuid = $routeParams.badgeUuid;
+ Badge.get({uuid: badgeUuid}, function (badge) {
+ $scope.badge = badge;
+ });
+}
+
function PersonListCtrl($scope, Person, PagingTableService) {
var groupSize = 4;
var personsWatcher = function () {