diff --git a/src/front/src/app/projects/project.service.js b/src/front/src/app/projects/project.service.js index be09d68..24a06ef 100644 --- a/src/front/src/app/projects/project.service.js +++ b/src/front/src/app/projects/project.service.js @@ -154,10 +154,26 @@ angular.module('topcoderX') "Authorization": "Bearer " + AuthService.getTokenV3() }, params: { - fields: 'id,name,status', + fields: 'id,name', sort: 'lastActivityAt desc', perPage: perPage, - page: page + page: page, + status: 'active' + } + }); + }; + + /** + * Get connect project by id + * @param id the id + */ + ProjectService.getConnectProject = function(id) { + return $http({ + method: 'GET', + url: $rootScope.appConfig.TC_API_V5_URL + '/projects/' + id, + headers: { + "Content-Type": "application/json", + "Authorization": "Bearer " + AuthService.getTokenV3() } }); }; diff --git a/src/front/src/app/upsertproject/upsertproject.controller.js b/src/front/src/app/upsertproject/upsertproject.controller.js index 239ac14..9596f60 100644 --- a/src/front/src/app/upsertproject/upsertproject.controller.js +++ b/src/front/src/app/upsertproject/upsertproject.controller.js @@ -26,6 +26,7 @@ angular.module('topcoderX').controller('ProjectController', ['currentUser', '$sc archived: false, createCopilotPayments: false }; + $scope.connectProjects = []; if ($rootScope.project) { $scope.title = 'Manage a Project'; $scope.project = $rootScope.project; @@ -34,6 +35,15 @@ angular.module('topcoderX').controller('ProjectController', ['currentUser', '$sc $scope.project.owner = $rootScope.project.owner; $scope.project.repoUrl = $rootScope.project.repoUrls.join(','); $scope.editing = true; + if ($rootScope.project.tcDirectId) { + ProjectService.getConnectProject($rootScope.project.tcDirectId).then(function (resp) { + var connectProject = { + id: resp.data.id, + name: resp.data.name + }; + $scope.connectProjects.unshift(connectProject); + }); + } } else { $scope.title = 'Add a Project'; $scope.editing = false; @@ -41,7 +51,7 @@ angular.module('topcoderX').controller('ProjectController', ['currentUser', '$sc $scope.isAdminUser = Helper.isAdminUser(currentUser); $scope.loadingConnectProjects = true; - $scope.connectProjects = []; + $scope.fetchConnectProjects = function($event) { if (!$event) { $scope.page = 1; @@ -57,7 +67,10 @@ angular.module('topcoderX').controller('ProjectController', ['currentUser', '$sc } $scope.loadingConnectProjects = true; ProjectService.getConnectProjects(20, $scope.page).then(function(resp) { - $scope.connectProjects = $scope.connectProjects.concat(resp.data); + var projects = resp.data.filter(function (p) { + return $rootScope.project && $rootScope.project.tcDirectId ? p.id !== $rootScope.project.tcDirectId : true; + }); + $scope.connectProjects = $scope.connectProjects.concat(projects); })['finally'](function() { $scope.loadingConnectProjects = false; }); diff --git a/src/front/src/app/upsertproject/upsertproject.html b/src/front/src/app/upsertproject/upsertproject.html index ac295c3..848837e 100644 --- a/src/front/src/app/upsertproject/upsertproject.html +++ b/src/front/src/app/upsertproject/upsertproject.html @@ -55,26 +55,26 @@