Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.92 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Http\Controllers;
  4.  
  5. use Illuminate\Http\Request;
  6. use App\Models\Member;
  7. use Validator;
  8.  
  9. class MemberController extends Controller
  10. {
  11. /**
  12. * Display a listing of the resource.
  13. *
  14. * @return \Illuminate\Http\Response
  15. */
  16. public function index()
  17. {
  18. $member = Member::all();
  19. return view('pages.member.index', compact('member'));
  20. }
  21.  
  22. /**
  23. * Show the form for creating a new resource.
  24. *
  25. * @return \Illuminate\Http\Response
  26. */
  27. public function create()
  28. {
  29. return view('pages.member.create');
  30. }
  31.  
  32. /**
  33. * Store a newly created resource in storage.
  34. *
  35. * @param \Illuminate\Http\Request $request
  36. * @return \Illuminate\Http\Response
  37. */
  38. public function store(Request $request)
  39. {
  40. $rule = [
  41. 'name' => 'required|max:20',
  42. 'email' => 'required|email|unique:members,email',
  43. 'phone' => 'required|min:9|max:13|regex:/(^62)([+?0-9]+$)+/',
  44. 'address' => 'required|max:90',
  45. ];
  46.  
  47. $message = [
  48. 'phone.regex' => 'Phone format must (628xxx)'
  49. ];
  50.  
  51. /* Validation for all input field */
  52. $validation = Validator::make($request->all(), $rule, $message);
  53. if ($validation->fails()) {
  54. /* redirect back and show error validation */
  55. return redirect()->back()->withErrors($validation)->withInput();
  56. }
  57. $data = (new Member)->create($request->all());
  58. if ($data) {
  59. /* if success redirect to member list */
  60. return response()->json(['message' => 'Data berhasil di input'], 200);
  61. // return redirect()->route('member.index')->with('status','Member has been created');
  62. } else {
  63. return 500;
  64. }
  65. }
  66.  
  67. /**
  68. * Display the specified resource.
  69. *
  70. * @param int $id
  71. * @return \Illuminate\Http\Response
  72. */
  73. public function show($id)
  74. {
  75. //
  76. }
  77.  
  78. /**
  79. * Show the form for editing the specified resource.
  80. *
  81. * @param int $id
  82. * @return \Illuminate\Http\Response
  83. */
  84. public function edit($id)
  85. {
  86. $data = Member::find($id);
  87. if ($data) {
  88. return view('pages.member.create', compact('data'));
  89. }
  90. return 404;
  91. }
  92.  
  93. /**
  94. * Update the specified resource in storage.
  95. *
  96. * @param \Illuminate\Http\Request $request
  97. * @param int $id
  98. * @return \Illuminate\Http\Response
  99. */
  100. public function update(Request $request, $id)
  101. {
  102. $rule = [
  103. 'name' => 'required|max:20',
  104. 'email' => 'required|email|',
  105. 'phone' => 'required|min:9|max:13|regex:/(^62)([+?0-9]+$)+/',
  106. 'address' => 'required|max:90',
  107. ];
  108.  
  109. $message = [
  110. 'phone.regex' => 'Phone format must (628xxx)'
  111. ];
  112.  
  113. /* Validation for all input field */
  114. $validation = Validator::make($request->all(), $rule, $message);
  115. if ($validation->fails()) {
  116. /* redirect back and show error validation */
  117. return redirect()->back()->withErrors($validation)->withInput();
  118. }
  119. $data = Member::find($id);
  120. if ($data) {
  121. $data->update($request->all());
  122. /* if success redirect to member list */
  123. return redirect()->route('member.index')->with('status', 'Member has been updated');
  124. } else {
  125. return 500;
  126. }
  127. }
  128.  
  129. /**
  130. * Remove the specified resource from storage.
  131. *
  132. * @param int $id
  133. * @return \Illuminate\Http\Response
  134. */
  135. public function destroy($id)
  136. {
  137. $data = Member::find($id)->delete();
  138. if ($data) {
  139. return redirect()->route('member.index')->with('status', 'Member has been deleted');
  140. }
  141. }
  142. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement