Files
streamline-emr/docker/_streamline-src/app/Http/Controllers/ModuleController.php
T

75 lines
2.1 KiB
PHP
Executable File

<?php
namespace Streamline\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Validator;
use Streamline\Models\Module;
class ModuleController extends Controller
{
public function index() {
$modules = Module::orderBy('name', 'asc')
->paginate(50);
return view('modules.index', compact('modules'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create() {
return view('modules.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request) {
$validator = Validator::make($request->all(), [
'name' => 'required',
//'mobile_number' => 'regex:/07\d{2} \d{3} \d{3}/'
//'mobile_number' => 'regex:/(07)[0-9]{8}/'
]);
if ($validator->fails()) {
$string = "";
foreach ($validator->errors()->getMessages() as $item) {
$string .= "{$item[0]}<br>";
}
return back()->withErrors($validator)->withInput();
} else {
$logged_in_user_id = Auth::user()->id;
$module = new Module;
$module->name = $request->name;
$module->created_by = $logged_in_user_id;
$module->updated_by = $logged_in_user_id;
try {
$module->save();
flash($request->name . " Module has been saved")->success();
return redirect("/modules/");
} catch (QueryException $e) {
flash($request->name . " Module already exists!")->error();
return back()->withInput();
}
}
}
public function destroy($id) {
$module = Module::find($id);
if ($module->delete()):
flash("Module has been deleted.")->success();
return redirect('/modules/');
endif;
}
}