diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php index 5577ef62..23b047b0 100644 --- a/app/Http/Controllers/Api/UserController.php +++ b/app/Http/Controllers/Api/UserController.php @@ -102,7 +102,7 @@ class UserController extends RestController $user = $this->userRepo->find($this->getUserId($request)); # Add a bid - if ($request->isMethod('PUT')) { + if ($request->isMethod('PUT') || $request->isMethod('POST')) { $flight_id = $request->input('flight_id'); $flight = $this->flightRepo->find($flight_id); $bid = $this->flightSvc->addBid($flight, $user); diff --git a/app/Routes/api.php b/app/Routes/api.php index 7d02d7ff..af9a544c 100755 --- a/app/Routes/api.php +++ b/app/Routes/api.php @@ -70,6 +70,7 @@ Route::group(['middleware' => ['api.auth']], function () Route::get('user/bids', 'UserController@bids'); Route::put('user/bids', 'UserController@bids'); + Route::post('user/bids', 'UserController@bids'); Route::delete('user/bids', 'UserController@bids'); Route::get('users/{id}', 'UserController@get'); diff --git a/resources/views/layouts/default/flights/scripts.blade.php b/resources/views/layouts/default/flights/scripts.blade.php index 2ac014e5..5bb104b2 100644 --- a/resources/views/layouts/default/flights/scripts.blade.php +++ b/resources/views/layouts/default/flights/scripts.blade.php @@ -5,34 +5,37 @@ $(document).ready(function () { e.preventDefault(); const btn = $(this); - const class_name = btn.attr('x-saved-class'); + const class_name = btn.attr('x-saved-class'); // classname to use is set on the element let params = { + url: '/api/user/bids', data: { 'flight_id': btn.attr('x-id') - }, - headers: { - 'x-api-key': "{{ Auth::user()->api_key }}" } }; if (btn.hasClass(class_name)) { params.method = 'DELETE'; - params.success = function () { + } else { + params.method = 'POST'; + } + + axios(params).then(response => { + console.log('save bid response', response); + + if(params.method === 'DELETE') { console.log('successfully removed flight'); btn.removeClass(class_name); alert('Your bid was removed'); - } - } else { - params.method = 'PUT'; - params.success = function () { + } else { console.log('successfully saved flight'); btn.addClass(class_name); alert('Your bid was added'); } - } - - $.ajax('/api/user/bids', params); + }) + .catch(error => { + console.error('Error saving bid status', params, error); + }); }); });