Skip to content

Instantly share code, notes, and snippets.

@gonz
Created July 5, 2013 16:30
Show Gist options
  • Save gonz/5935688 to your computer and use it in GitHub Desktop.
Save gonz/5935688 to your computer and use it in GitHub Desktop.
function doQuery(type, user) {
var d = $q.defer();
var result = Alert.get({ 'type': type, 'user': user.id }, function() {
d.resolve(result);
});
return d.promise;
}
function getAllAlerts(user, alertsConfigured){
var d,
promises = [],
iterIndex,
list_of_alert_types = ['rangewithoverlap', 'range', 'attimeofday',
'backbyendofday', 'hasnotlefthome'];
for (iterIndex=0; iterIndex < list_of_alert_types.length; iterIndex++){
// VERSION A
d = $q.defer();
Alert.get({'type': list_of_alert_types[iterIndex], 'user': user.id}, function (response) {
d.resolve(response.objects);
});
promises.push(d.promise);
// VERSION B
promises.push(doQuery(list_of_alert_types[iterIndex], user));
};
$q.all(promises).then(function(data){
var alerts, apiAlerts = [];
apiAlerts = apiAlerts.concat.apply(apiAlerts, data);
alerts = translateApiAlerts(apiAlerts, user, alertsConfigured);
$scope.alerts = alerts;
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment