From b72cc319cc5909c674b30e17bdaec49877253abe Mon Sep 17 00:00:00 2001
From: Hiro Asari <asari.ruby@gmail.com>
Date: Wed, 6 Nov 2013 15:57:16 -0500
Subject: [PATCH] Reduce number of AJAX requests

---
 assets/scripts/app/models/user.coffee | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/assets/scripts/app/models/user.coffee b/assets/scripts/app/models/user.coffee
index 6c665dd0..eaf4bc3f 100644
--- a/assets/scripts/app/models/user.coffee
+++ b/assets/scripts/app/models/user.coffee
@@ -31,27 +31,31 @@ require 'travis/model'
     "https://github.com/#{@get('login')}"
   ).property()
 
+  _rawPermissions: (->
+    Travis.ajax.get('/users/permissoins')
+  ).property()
+
   permissions: (->
     permissions = Ember.ArrayProxy.create(content: [])
-    Travis.ajax.get('/users/permissions', (data) => permissions.set('content', data.permissions))
+    @get('_rawPermissions').then (data) => permissions.set('content', data.permissions)
     permissions
   ).property()
 
   adminPermissions: (->
     permissions = Ember.ArrayProxy.create(content: [])
-    Travis.ajax.get('/users/permissions', (data) => permissions.set('content', data.admin))
+    @get('_rawPermissions').then (data) => permissions.set('content', data.admin)
     permissions
   ).property()
 
   pullPermissions: (->
     permissions = Ember.ArrayProxy.create(content: [])
-    Travis.ajax.get('/users/permissions', (data) => permissions.set('content', data.pull))
+    @get('_rawPermissions').then (data) => permissions.set('content', data.pull)
     permissions
   ).property()
 
   pushPermissions: (->
     permissions = Ember.ArrayProxy.create(content: [])
-    Travis.ajax.get('/users/permissions', (data) => permissions.set('content', data.push))
+    @get('_rawPermissions').then (data) => permissions.set('content', data.push)
     permissions
   ).property()