Files
streamline-emr/docker/streamline-src/app/Http/Controllers/ModuleController.php
T
alec.turner 4a89356390 Import latest app updates from streamline
An updated set of source files and initialization was provided by streamline to
address issues observed during initial testing. These files have been updated in
order to generate a new set of app images.
2024-04-11 11:16:51 -07:00

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;
}
}