Przeglądaj źródła

Protect against reading the project members list too soon.

Paulo Reis 8 lat temu
rodzic
commit
64a66aafd5

+ 6 - 2
services/web/public/coffee/ide/history/controllers/HistoryListController.coffee

@@ -6,13 +6,17 @@ define [
 	App.controller "HistoryListController", ["$scope", "$modal", "ide", ($scope, $modal, ide) ->
 		$scope.hoveringOverListSelectors = false
 
-		projectUsers = $scope.project.members.concat $scope.project.owner
+		$scope.projectUsers = []
+
+		$scope.$watch "project.members", (newVal) ->
+			if newVal?
+				$scope.projectUsers = newVal.concat $scope.project.owner
 
 		# This method (and maybe the one below) will be removed soon. User details data will be 
 		# injected into the history API responses, so we won't need to fetch user data from other
 		# local data structures.
 		_getUserById = (id) ->
-			_.find projectUsers, (user) ->
+			_.find $scope.projectUsers, (user) ->
 				curUserId = user?._id or user?.id
 				curUserId == id
 

+ 6 - 1
services/web/public/coffee/ide/history/controllers/HistoryV2ListController.coffee

@@ -7,8 +7,13 @@ define [
 		$scope.hoveringOverListSelectors = false
 		$scope.listConfig =
 			showOnlyLabelled: false
-		$scope.projectUsers = $scope.project.members.concat $scope.project.owner
 		
+		$scope.projectUsers = []
+
+		$scope.$watch "project.members", (newVal) ->
+			if newVal?
+				$scope.projectUsers = newVal.concat $scope.project.owner
+
 		$scope.loadMore = () =>
 			ide.historyManager.fetchNextBatchOfUpdates()