Might update, pretty hard to test as I don't have the services.

May have to use $timeout(function () { $scope.$apply(); });