Merge pull request #8141 from snipe/fixes/better_handling_when_license_is_invalid

Better handle the logic to determine if we should display the license checkout blade [ch13792]
This commit is contained in:
snipe 2020-06-16 20:20:07 -07:00 committed by GitHub
commit 9a2440dc4b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -246,17 +246,23 @@ class LicensesController extends Controller
*/ */
public function getCheckout($licenceId) public function getCheckout($licenceId)
{ {
// Check that the license is valid // Check that the license is valid
if ($license = License::where('id',$licenceId)->first()) { if ($license = License::where('id',$licenceId)->first()) {
$this->authorize('checkout', $license);
// If the license is valid, check that there is an available seat // If the license is valid, check that there is an available seat
if ($license->getAvailSeatsCountAttribute() < 1) { if ($license->getAvailSeatsCountAttribute() < 1) {
return redirect()->route('licenses.index')->with('error', 'There are no available seats for this license'); return redirect()->route('licenses.index')->with('error', 'There are no available seats for this license');
} }
return view('licenses/checkout', compact('license'));
} }
$this->authorize('checkout', $license); return redirect()->route('licenses.index')->with('error', trans('admin/licenses/message.does_not_exist'));
return view('licenses/checkout', compact('license'));
} }