Fix for system registration, new systems couldnt be added.

This commit is contained in:
Deon George 2023-04-14 19:47:33 +10:00
parent 51e915b73d
commit c5500020ae
3 changed files with 29 additions and 27 deletions

View File

@ -580,7 +580,7 @@ class SystemController extends Controller
}
/**
* register system
* Register a system, or link to an existing system
*/
public function system_register(SystemRegister $request)
{
@ -588,14 +588,14 @@ class SystemController extends Controller
if ($request->isMethod('GET'))
return view('user.system.register');
if ($request->action != 'create')
if ($request->action === 'register' && $request->system_id)
return view('user.system.widget.register_confirm')
->with('o',System::findOrFail($request->system_id));
$o = System::findOrNew($request->system_id);
// If the system exists, and we are 'register', we'll start the address claim process
if ($o->exists && $request->action == 'register') {
if ($o->exists && $request->action === 'Link') {
$validate = Setup::findOrFail(config('app.id'))->system->inMyZones($o->addresses);
// If we have addresses, we'll trigger the routed netmail

View File

@ -27,24 +27,26 @@ class SystemRegister extends FormRequest
/**
* Get the validation rules that apply to the request.
*
* If the system exists (POST & action="register" & system_id=<value>), then no validation required
* If the system doesnt exist (POST & action="register" & system_id undefined) then we need just a name to start the process (action="create")
* Then, full validation
* @return array
*/
public function rules(Request $request)
{
if ((! $request->isMethod('post')) || ($request->action == 'register'))
if ((! $request->isMethod('post')) || ($request->action === 'register'))
return [];
if ((! $this->so->exists) && ($request->action == 'create')) {
if ((! $this->so->exists) && ($request->action === 'create'))
return [
'name' => 'required|min:3',
];
}
return array_filter(array_merge(
[
'name' => 'required|min:3',
],
($this->so->exists || ($request->action != 'create')) ? [
($this->so->exists || ($request->action !== 'create')) ? [
'location' => 'required|min:3',
'sysop' => 'required|min:3',

View File

@ -34,7 +34,7 @@
</div>
</div>
@if (old('submit') != 'create')
@if (old('submit') !== 'create')
<div class="row">
<div class="col-12 pb-2">
<button type="button" name="submit" class="btn btn-success">Next</button><span id="next" class="m-2"><i class="spinner-border spinner-border-sm text-light d-none"></i></span>
@ -131,7 +131,7 @@
switch (data.status) {
case 200:
// if json is null, means no match, won't do again.
if(data.responseText==null || (data.responseText.length===0)) return;
if(data.responseText===null || (data.responseText.length===0)) return;
$('#create').empty().append(data.responseText);
@if($errors->count())
@ -166,7 +166,7 @@
})
}
if ({{ old('submit') == 'create' ? 'true' : 'false' }}) {
if ({{ old('submit') === 'create' ? 'true' : 'false' }}) {
getform();
}