Enhance the system link/register selection
This commit is contained in:
@@ -826,11 +826,11 @@ class SystemController extends Controller
|
||||
if ($request->isMethod('GET'))
|
||||
return view('user.system.register');
|
||||
|
||||
if ($request->action === 'register' && $request->system_id)
|
||||
if ($request->action === 'register' && $request->name && is_numeric($request->name))
|
||||
return view('user.system.widget.register_confirm')
|
||||
->with('o',System::findOrFail($request->system_id));
|
||||
->with('o',System::findOrFail($request->name));
|
||||
|
||||
$o = System::findOrNew($request->system_id);
|
||||
$o = System::findOrNew(is_numeric($request->system_id) ? $request->system_id : NULL);
|
||||
|
||||
// If the system exists, and we are 'register', we'll start the address claim process
|
||||
if ($o->exists && $request->action === 'Link') {
|
||||
|
@@ -8,7 +8,7 @@ use Illuminate\Support\Facades\Gate;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
use App\Classes\FTN\Packet;
|
||||
use App\Models\System;
|
||||
use App\Models\{Setup,System};
|
||||
|
||||
// @todo rename to SystemRegisterRequest
|
||||
class SystemRegister extends FormRequest
|
||||
@@ -22,9 +22,17 @@ class SystemRegister extends FormRequest
|
||||
*/
|
||||
public function authorize(Request $request)
|
||||
{
|
||||
$this->so = System::findOrNew($request->system_id);
|
||||
$this->so = new System;
|
||||
|
||||
return Gate::allows($this->so->users->count() ? 'update' : 'register',$this->so);
|
||||
if (is_numeric($request->name)) {
|
||||
$this->so = System::findOrNew($request->name);
|
||||
|
||||
// Cannot claim this site
|
||||
if ($this->so->id === Setup::findOrFail(config('app.id'))->system_id)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return Gate::allows(is_numeric($request->name) && $this->so->users->count() ? 'update' : 'register',$this->so);
|
||||
}
|
||||
|
||||
public function messages(): array
|
||||
|
Reference in New Issue
Block a user