I am building in laravel 5.1
using angularJs
.
When the user clicks a button, I want to send a destroy request
to delete it from the database and then when thats completed send a get request
to get the new data now that one has been deleted.
So I attached my method to an ng-click event on a button, this works, it hits the method.
I then run a .destroy request
. Inside the .then()
method of that .destroy
I want to then call another method which has a .get request
.
This works perfectly in Safari, but doesn't work in Chrome or Firefox.
Here is my code for the controller
, the method that is called on button click to delete is deleteOpportunity()
:
$scope.getOpportunities = function()
{
UBOService.get()
.then(function successCallback(responsed) {
$scope.opportunities = responsed.data;
}, function errorCallback(response) {
$scope.error = response;
});
}
$scope.deleteOpportunity = function()
{
UBOService.destroy($scope.activeItem.id)
.then(function successCallback(response) {
$scope.getOpportunities();
return false;
}, function errorCallback(response) {
$scope.error = response;
});
}
My service code:
app.service('UBOService', function($http) {
return {
get : function() {
return $http.get('/api/user-booked-opportunities');
},
destroy : function(id) {
return $http.delete('/api/user-booked-opportunities/' + id);
}
}
})
Am I doing something wrong? Is there something I am missing? How does Safari interact differently with this code which makes it work?