Advertisement
CodeWarrior-Hawaii

Deferred User Data Retrieval

Aug 3rd, 2015
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.             $q.all(getFriendsAsync().then(copyFriendsToProcessedData),
  2.                    getFriendRequestsAsync().then(copyFriendRequestsToProcessedData),
  3.                    getBlockedUsersAsync().then(copyBlockedUsersToProcessedData),
  4.                    getReferralsAsync().then(copyReferralsToProcessedData),
  5.                    getInboxAsync().then(copyInboxToProcessedData),
  6.                    getPostsAsync().then(copyPostsToProcessedData),
  7.                    getContestsAsync().then(copyContestsToProcessedData))
  8.                 .then(processUserData);
  9.  
  10.         var getFriendRequestsAsync = function(){
  11.             var deferred = $q.defer();
  12.             $http.get(ApiEndpoint.url + '/getFriendRequests/' + encodeURIComponent(processedData.sessionKey))
  13.                 .success(function(data){
  14.                     if(!data.ErrorMessage){
  15.                         flatData.friendRequests = data.Result.IncomingFriendRequests;
  16.                         flatData.pendingFriendRequests = data.Result.OutgoingFriendRequests;
  17.                         deferred.resolve(data.Result);
  18.                     }
  19.                     else{
  20.                         deferred.reject(data.ErrorMessage);
  21.                     }
  22.                 })
  23.                 .error(function(){
  24.                     errorMessage = 'Failed to retrieve friend requests';
  25.                     deferred.reject(errorMessage);
  26.                 });
  27.             return deferred.promise;
  28.         };
  29.  
  30.         var copyFriendRequestsToProcessedData = function(){
  31.             flatData.friendRequests.forEach(function(friendRequest){
  32.                 var clonedFriendRequest = cloneObject(friendRequest);
  33.                 lookupData.friendRequests[clonedFriendRequest.FriendRequestId] = clonedFriendRequest;
  34.                 processedData.friendRequests.push(clonedFriendRequest);
  35.             });
  36.             flatData.pendingFriendRequests.forEach(function(friendRequest){
  37.                 var clonedFriendRequest = cloneObject(friendRequest);
  38.                 lookupData.pendingRequests[clonedFriendRequest.FriendRequestId] = clonedFriendRequest;
  39.                 processedData.pendingFriendRequests.push(clonedFriendRequest);
  40.             });
  41.         };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement