Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use App\Models\Member;
- use Validator;
- class MemberController extends Controller
- {
- /**
- * Display a listing of the resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function index()
- {
- $member = Member::all();
- return view('pages.member.index', compact('member'));
- }
- /**
- * Show the form for creating a new resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function create()
- {
- return view('pages.member.create');
- }
- /**
- * Store a newly created resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @return \Illuminate\Http\Response
- */
- public function store(Request $request)
- {
- $rule = [
- 'name' => 'required|max:20',
- 'email' => 'required|email|unique:members,email',
- 'phone' => 'required|min:9|max:13|regex:/(^62)([+?0-9]+$)+/',
- 'address' => 'required|max:90',
- ];
- $message = [
- 'phone.regex' => 'Phone format must (628xxx)'
- ];
- /* Validation for all input field */
- $validation = Validator::make($request->all(), $rule, $message);
- if ($validation->fails()) {
- /* redirect back and show error validation */
- return redirect()->back()->withErrors($validation)->withInput();
- }
- $data = (new Member)->create($request->all());
- if ($data) {
- /* if success redirect to member list */
- return response()->json(['message' => 'Data berhasil di input'], 200);
- // return redirect()->route('member.index')->with('status','Member has been created');
- } else {
- return 500;
- }
- }
- /**
- * Display the specified resource.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function show($id)
- {
- //
- }
- /**
- * Show the form for editing the specified resource.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function edit($id)
- {
- $data = Member::find($id);
- if ($data) {
- return view('pages.member.create', compact('data'));
- }
- return 404;
- }
- /**
- * Update the specified resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function update(Request $request, $id)
- {
- $rule = [
- 'name' => 'required|max:20',
- 'email' => 'required|email|',
- 'phone' => 'required|min:9|max:13|regex:/(^62)([+?0-9]+$)+/',
- 'address' => 'required|max:90',
- ];
- $message = [
- 'phone.regex' => 'Phone format must (628xxx)'
- ];
- /* Validation for all input field */
- $validation = Validator::make($request->all(), $rule, $message);
- if ($validation->fails()) {
- /* redirect back and show error validation */
- return redirect()->back()->withErrors($validation)->withInput();
- }
- $data = Member::find($id);
- if ($data) {
- $data->update($request->all());
- /* if success redirect to member list */
- return redirect()->route('member.index')->with('status', 'Member has been updated');
- } else {
- return 500;
- }
- }
- /**
- * Remove the specified resource from storage.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function destroy($id)
- {
- $data = Member::find($id)->delete();
- if ($data) {
- return redirect()->route('member.index')->with('status', 'Member has been deleted');
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement