Security update enabling update_nn to edit system details
This commit is contained in:
@@ -16,7 +16,7 @@ use Illuminate\Support\Facades\Notification;
|
||||
use Illuminate\Support\ViewErrorBag;
|
||||
|
||||
use App\Classes\FTN\Message;
|
||||
use App\Http\Requests\{AddressMerge,AreafixRequest,SystemEchoareaRequest,SystemRegister,SystemSessionRequest};
|
||||
use App\Http\Requests\{AddressMerge,AreafixRequest,SystemEchoareaRequest,SystemRegisterRequest,SystemSessionRequest};
|
||||
use App\Jobs\AddressPoll;
|
||||
use App\Models\{Address,Echoarea,Echomail,Filearea,Netmail,Setup,System,Zone};
|
||||
use App\Notifications\Netmails\AddressLink;
|
||||
@@ -29,13 +29,18 @@ class SystemController extends Controller
|
||||
/**
|
||||
* Add or edit a node
|
||||
*/
|
||||
public function add_edit(SystemRegister $request,System $o)
|
||||
public function add_edit(SystemRegisterRequest $request, System $o)
|
||||
{
|
||||
if ($request->post()) {
|
||||
foreach (['name','location','sysop','hold','phone','address','port','active','method','notes','zt_id','pkt_type','heartbeat'] as $key)
|
||||
$o->{$key} = $request->post($key);
|
||||
if ($request->validated()) {
|
||||
foreach (['name','location','phone','address','port','active','method','pkt_type'] as $key)
|
||||
$o->{$key} = $request->validated($key);
|
||||
|
||||
switch ($request->post('pollmode')) {
|
||||
// Sometimes items
|
||||
foreach (['sysop','hold','notes','zt_id','heartbeat'] as $key)
|
||||
if ($request->validated($key))
|
||||
$o->{$key} = $request->validated($key);
|
||||
|
||||
switch ($request->validated('pollmode')) {
|
||||
case 1: $o->pollmode = FALSE; break;
|
||||
case 2: $o->pollmode = TRUE; break;
|
||||
default: $o->pollmode = NULL;
|
||||
@@ -49,9 +54,9 @@ class SystemController extends Controller
|
||||
->transform(function($item) { $item['active'] = Arr::get($item,'active',FALSE); return $item; });
|
||||
|
||||
$o->mailers()->sync($mailers);
|
||||
if ($request->post('users')) {
|
||||
if (array_filter($request->post('users'),function($item) { return $item; }))
|
||||
$o->users()->sync($request->post('users'));
|
||||
if ($request->validated('users')) {
|
||||
if (array_filter($request->validated('users'),function($item) { return $item; }))
|
||||
$o->users()->sync($request->validated('users'));
|
||||
else
|
||||
$o->users()->detach();
|
||||
}
|
||||
@@ -62,7 +67,7 @@ class SystemController extends Controller
|
||||
$o->load(['addresses.zone.domain','addresses.nodes_hub','addresses.system','sessions.domain','sessions.systems']);
|
||||
|
||||
return view('system.addedit')
|
||||
->with('action',$o->exists ? 'update' : 'create')
|
||||
->with('action',$o->exists ? 'update_nn' : 'create')
|
||||
->with('o',$o);
|
||||
}
|
||||
|
||||
@@ -767,7 +772,7 @@ class SystemController extends Controller
|
||||
/**
|
||||
* Register a system, or link to an existing system
|
||||
*/
|
||||
public function register(SystemRegister $request)
|
||||
public function register(SystemRegisterRequest $request)
|
||||
{
|
||||
// Step 1, show the user a form to select an existing defined system
|
||||
if ($request->isMethod('GET'))
|
||||
|
Reference in New Issue
Block a user