ipPoolRepository->filter( [ 'page' => $request->get('page') ?? 1 ] ); $title = 'List all server ip pool'; return view('administrator.pages.module.ippool.index', compact('modules', 'title')); } public function create() { $title = 'Add new server ip pool'; $moduleNetworks = $this->moduleNetworkRepository->filter( [ 'page' => 1 ] ); return view('administrator.pages.module.ippool.add', compact('title', 'moduleNetworks')); } public function store(Request $request) { $data = $request->all(); $ipAddresses = explode(',', $data['ip_address']); $moduleNetworkId = $data['module_network_id']; foreach ($ipAddresses as $ip) { $this->ipPoolRepository->create([ 'ip_address' => trim($ip), 'module_network_id' => $moduleNetworkId, ]); } return redirect()->route('module.ippool.index')->with('success', 'Add new server ip pool success'); } public function edit(int $id = 0) { $module = $this->ipPoolRepository->find($id); $moduleNetworks = $this->moduleNetworkRepository->filter( [ 'page' => 1 ] ); $title = 'Edit server ip pool'; return view('administrator.pages.module.ippool.edit', ['module' => $module, 'title' => $title, 'moduleNetworks' => $moduleNetworks]); } public function update(Request $request, int $id = 0) { $this->ipPoolRepository->update($id, $request->all()); } public function destroy(int $id = 0) { $this->ipPoolRepository->delete($id); return redirect()->route('module.ippool.index')->with('success', 'Delete server ip pool success'); } }