diff --git a/src/app/admin/module.js b/src/app/admin/module.js
index 534d58a5..d95ccd68 100644
--- a/src/app/admin/module.js
+++ b/src/app/admin/module.js
@@ -58,26 +58,6 @@ angular.module('sb.admin', [ 'sb.services', 'sb.templates', 'sb.util',
}
}
})
- .state('sb.admin.project_group', {
- url: '/project_group',
- templateUrl: 'app/admin/template/project_group.html',
- controller: 'ProjectGroupAdminController'
- })
- .state('sb.admin.project_group_edit', {
- url: '/project_group/:id',
- templateUrl: 'app/admin/template/project_group_edit.html',
- controller: 'ProjectGroupEditController',
- resolve: {
- projectGroup: function ($stateParams, ProjectGroup) {
- return ProjectGroup.get({id: $stateParams.id}).$promise;
- },
- projects: function ($stateParams, ProjectGroupItem) {
- return ProjectGroupItem.browse(
- {projectGroupId: $stateParams.id}
- ).$promise;
- }
- }
- })
.state('sb.admin.team', {
url: '/team',
templateUrl: 'app/admin/template/team.html'
diff --git a/src/app/admin/template/admin_submenu.html b/src/app/admin/template/admin_submenu.html
index 54c35d36..7f8b97eb 100644
--- a/src/app/admin/template/admin_submenu.html
+++ b/src/app/admin/template/admin_submenu.html
@@ -24,9 +24,4 @@
-
-
-
-
-
diff --git a/src/app/admin/controller/project_group_admin_controller.js b/src/app/project_group/controller/project_group_admin_controller.js
similarity index 91%
rename from src/app/admin/controller/project_group_admin_controller.js
rename to src/app/project_group/controller/project_group_admin_controller.js
index 29672bbf..06cfc212 100644
--- a/src/app/admin/controller/project_group_admin_controller.js
+++ b/src/app/project_group/controller/project_group_admin_controller.js
@@ -17,8 +17,8 @@
/**
* Administration controller for project groups.
*/
-angular.module('sb.admin').controller('ProjectGroupAdminController',
- function ($scope, $modal, ProjectGroup, Preference) {
+angular.module('sb.project_group').controller('ProjectGroupAdminController',
+ function ($scope, $modal, ProjectGroup, Preference, isSuperuser) {
'use strict';
/**
@@ -28,6 +28,8 @@ angular.module('sb.admin').controller('ProjectGroupAdminController',
*/
$scope.projectGroups = [];
+ $scope.is_superuser = isSuperuser;
+
/**
* The search filter query string.
*
@@ -41,7 +43,7 @@ angular.module('sb.admin').controller('ProjectGroupAdminController',
$scope.addProjectGroup = function () {
$scope.modalInstance = $modal.open(
{
- templateUrl: 'app/admin/template/project_group_new.html',
+ templateUrl: 'app/project_group/template/new.html',
controller: 'ProjectGroupNewController'
});
@@ -58,7 +60,7 @@ angular.module('sb.admin').controller('ProjectGroupAdminController',
*/
$scope.deleteProjectGroup = function (projectGroup) {
var modalInstance = $modal.open({
- templateUrl: 'app/admin/template/project_group_delete.html',
+ templateUrl: 'app/project_group/template/delete.html',
controller: 'ProjectGroupDeleteController',
resolve: {
projectGroup: function () {
diff --git a/src/app/admin/controller/project_group_delete_controller.js b/src/app/project_group/controller/project_group_delete_controller.js
similarity index 94%
rename from src/app/admin/controller/project_group_delete_controller.js
rename to src/app/project_group/controller/project_group_delete_controller.js
index d51def9c..b4821eb4 100644
--- a/src/app/admin/controller/project_group_delete_controller.js
+++ b/src/app/project_group/controller/project_group_delete_controller.js
@@ -17,7 +17,7 @@
/**
* Controller for the project group delete modal popup.
*/
-angular.module('sb.admin').controller('ProjectGroupDeleteController',
+angular.module('sb.project_group').controller('ProjectGroupDeleteController',
function ($scope, projectGroup, $modalInstance) {
'use strict';
diff --git a/src/app/admin/controller/project_group_edit_controller.js b/src/app/project_group/controller/project_group_edit_controller.js
similarity index 98%
rename from src/app/admin/controller/project_group_edit_controller.js
rename to src/app/project_group/controller/project_group_edit_controller.js
index d68aac98..75eeb192 100644
--- a/src/app/admin/controller/project_group_edit_controller.js
+++ b/src/app/project_group/controller/project_group_edit_controller.js
@@ -17,7 +17,7 @@
/**
* New Project Group edit controller.
*/
-angular.module('sb.admin').controller('ProjectGroupEditController',
+angular.module('sb.project_group').controller('ProjectGroupEditController',
function ($q, $log, $scope, $state, projectGroup, projects, Project,
ProjectGroupItem, ArrayUtil) {
'use strict';
@@ -178,7 +178,7 @@ angular.module('sb.admin').controller('ProjectGroupEditController',
// Roll all the promises into one big happy promise.
$q.all(promises).then(
function () {
- $state.go('sb.admin.project_group', {});
+ $state.go('sb.project_group.list', {});
},
function (error) {
$log.error(error);
diff --git a/src/app/admin/controller/project_group_item_controller.js b/src/app/project_group/controller/project_group_item_controller.js
similarity index 94%
rename from src/app/admin/controller/project_group_item_controller.js
rename to src/app/project_group/controller/project_group_item_controller.js
index e6d07b95..fe02b388 100644
--- a/src/app/admin/controller/project_group_item_controller.js
+++ b/src/app/project_group/controller/project_group_item_controller.js
@@ -17,7 +17,7 @@
/**
* Controller for the project group member list.
*/
-angular.module('sb.admin').controller('ProjectGroupItemController',
+angular.module('sb.project_group').controller('ProjectGroupItemController',
function ($scope, $log, ProjectGroupItem) {
'use strict';
diff --git a/src/app/admin/controller/project_group_new_controller.js b/src/app/project_group/controller/project_group_new_controller.js
similarity index 98%
rename from src/app/admin/controller/project_group_new_controller.js
rename to src/app/project_group/controller/project_group_new_controller.js
index 9088fe88..f05f7249 100644
--- a/src/app/admin/controller/project_group_new_controller.js
+++ b/src/app/project_group/controller/project_group_new_controller.js
@@ -17,7 +17,7 @@
/**
* New Project Group modal controller.
*/
-angular.module('sb.admin').controller('ProjectGroupNewController',
+angular.module('sb.project_group').controller('ProjectGroupNewController',
function ($q, $log, $scope, $modalInstance, ProjectGroup, ProjectGroupItem,
Project) {
'use strict';
diff --git a/src/app/project_group/module.js b/src/app/project_group/module.js
index adac9770..996df934 100644
--- a/src/app/project_group/module.js
+++ b/src/app/project_group/module.js
@@ -17,7 +17,7 @@
/**
* The StoryBoard project group submodule handles most activity involving
* searching for and reviewing project groups. Administration of project groups
- * lives in the admin module.
+ * has moved from the admin module.
*/
angular.module('sb.project_group',
['ui.router', 'sb.services', 'sb.util', 'sb.auth'])
@@ -32,7 +32,8 @@ angular.module('sb.project_group',
.state('sb.project_group', {
abstract: true,
url: '/project_group',
- template: '',
+ templateUrl: 'app/project_group/template/project_group.html',
+ controller: 'ProjectGroupAdminController',
resolve: {
isSuperuser: PermissionResolver
.resolvePermission('is_superuser', true)
@@ -43,8 +44,8 @@ angular.module('sb.project_group',
templateUrl: 'app/project_group/template/list.html',
controller: 'ProjectGroupListController'
})
- .state('sb.project_group.detail', {
- url: '/{id:[0-9]+}',
+ .state('sb.project_group_detail', {
+ url: '/project_group/detail/:id',
templateUrl: 'app/project_group/template/detail.html',
controller: 'ProjectGroupDetailController',
resolve: {
@@ -60,6 +61,22 @@ angular.module('sb.project_group',
return deferred.promise;
}
}
- });
- })
-;
+ })
+ .state('sb.project_group_edit', {
+ url: '/project_group/edit/:id',
+ templateUrl: 'app/project_group/template/edit.html',
+ controller: 'ProjectGroupEditController',
+ resolve: {
+ projectGroup: function ($stateParams, ProjectGroup) {
+ return ProjectGroup.get({id: $stateParams.id}).$promise;
+ },
+ projects: function ($stateParams, ProjectGroupItem) {
+ return ProjectGroupItem.browse(
+ {projectGroupId: $stateParams.id}
+ ).$promise;
+ },
+ isSuperuser: PermissionResolver
+ .requirePermission('is_superuser', true)
+ }
+ });
+ });
diff --git a/src/app/admin/template/project_group_delete.html b/src/app/project_group/template/delete.html
similarity index 100%
rename from src/app/admin/template/project_group_delete.html
rename to src/app/project_group/template/delete.html
diff --git a/src/app/project_group/template/detail.html b/src/app/project_group/template/detail.html
index f89e7901..c5da0d44 100644
--- a/src/app/project_group/template/detail.html
+++ b/src/app/project_group/template/detail.html
@@ -5,6 +5,11 @@
{{projectGroup.title}}
+
+
+
+
+
diff --git a/src/app/admin/template/project_group_edit.html b/src/app/project_group/template/edit.html
similarity index 99%
rename from src/app/admin/template/project_group_edit.html
rename to src/app/project_group/template/edit.html
index e2f851ba..44731d9f 100644
--- a/src/app/admin/template/project_group_edit.html
+++ b/src/app/project_group/template/edit.html
@@ -130,7 +130,7 @@
ng-disabled="!projectGroupForm.$valid || !projectsForm.$valid || !checkValidProjects() || isSaving">
Save
-
Cancel
diff --git a/src/app/project_group/template/list.html b/src/app/project_group/template/list.html
index 2bfb5af8..1f41ad67 100644
--- a/src/app/project_group/template/list.html
+++ b/src/app/project_group/template/list.html
@@ -23,6 +23,12 @@
Project Groups
+
Project Groups
diff --git a/src/app/admin/template/project_group_new.html b/src/app/project_group/template/new.html
similarity index 100%
rename from src/app/admin/template/project_group_new.html
rename to src/app/project_group/template/new.html
diff --git a/src/app/admin/template/project_group.html b/src/app/project_group/template/project_group.html
similarity index 89%
rename from src/app/admin/template/project_group.html
rename to src/app/project_group/template/project_group.html
index 5e1d4723..2663cb81 100644
--- a/src/app/admin/template/project_group.html
+++ b/src/app/project_group/template/project_group.html
@@ -20,6 +20,7 @@
Project Group Admin