Advertisement
Guest User

Untitled

a guest
Nov 4th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.51 KB | None | 0 0
  1. <?php namespace AppHttpControllers;
  2. use AppHttpRequestsUserFormRequest;
  3. use AppHttpControllersController;
  4. use IlluminateSupportFacadesSession;
  5. use AppHttpRequestsAuthRegisterRequest;
  6. class UserController extends Controller {
  7.  
  8. public function index()
  9. {
  10. // show the list of all users
  11. $users = AppUser::all();
  12. $User = new AppUser();
  13. $userRoleOptions = AppRoles::pluck('role_name', 'id');
  14. return view('admin.user.indexUser', ['users' => $users, 'User' => $User, 'userRoleOptions' => $userRoleOptions]);
  15. }
  16. /**
  17. * Show the form for creating a new resource.
  18. *
  19. * @return Response
  20. */
  21. public function delete($id)
  22. {
  23. //find the right user
  24. $user = AppUser::findorfail($id);
  25. // delete the found user
  26. $user->delete();
  27. $users = AppUser::all();
  28. return view('admin.user.indexUser')->with('users', $users);
  29. }
  30.  
  31. /**
  32. * Store a newly created resource in storage.
  33. *
  34. * @return Response
  35. */
  36. protected function create(RegisterRequest $request) {
  37. //validate the user input
  38. $this->validate($request, [
  39. 'name' => 'required|max:255',
  40. 'email' => 'required|email|max:255|unique:users',
  41. 'password' => 'required|confirmed|min:6'
  42. ]);
  43. //fill the input in the database
  44. $temp = AppUser::create();
  45. $temp->name = $request->name;
  46. $temp->email = $request->email;
  47. $temp->password = bcrypt($request->password);
  48. $temp->role_id = $request->role_id;
  49. $temp->save();
  50. //return user feedback
  51. Session::flash ( 'flash_message', 'Account is succesvol aangemaakt!');
  52. $users = AppUser::all();
  53. $User = new AppUser();
  54. $userRoleOptions = AppRoles::pluck('role_name', 'id');
  55. return view('admin.user.indexUser', ['users' => $users, 'User' => $User, 'userRoleOptions' => $userRoleOptions]);
  56. }
  57. /**
  58. * Show the form for editing the specified resource.
  59. *
  60. * @param int $id
  61. * @return Response
  62. */
  63. public function edit($id)
  64. {
  65. //find the right user
  66. $user = AppUser::find($id);
  67. $User = new AppUser();
  68. $userRoleOptions = AppRoles::pluck('role_name', 'id');
  69. //return the edit page of the fount user
  70. return view('admin.user.updateUser', array('user' => $user, 'User' => $User, 'userRoleOptions' => $userRoleOptions));
  71. }
  72. public function update(UserFormRequest $request)
  73. {
  74. // find the right user
  75. $user = AppUser::findorfail($request->input('id'));
  76. // validate user input
  77. $this->validate ( $request, [
  78. 'name' => 'required',
  79. 'email' => 'required'
  80. ] );
  81. // this 'fills' the user model with all fields of the Input that are fillable
  82. // if statment checks if password is right en if filled it changes the password
  83. $user->name = $request ['name'];
  84. $user->email = $request ['email'];
  85. if (strlen ( $request ['password'] ) > 6) {
  86. $user->password = bcrypt ( $request ['password'] );
  87. } elseif (strlen ( $request ['password'] ) > 0) {
  88. return redirect ()->back ();
  89. }
  90. $user->role_id = $request['role_id'];
  91.  
  92. $user->save (); // no validation implemented
  93. Session::flash ( 'flash_message', 'Account is succesvol gewijzigd!');
  94. $users = AppUser::all();
  95. $User = new AppUser();
  96. $userRoleOptions = AppRoles::pluck('role_name', 'id');
  97. return view('admin.user.updateUser', ['users' => $users, 'User' => $User, 'userRoleOptions' => $userRoleOptions]);
  98. }
  99. }
  100.  
  101. <?php namespace App;
  102.  
  103. use IlluminateAuthAuthenticatable;
  104. use IlluminateDatabaseEloquentModel;
  105. use IlluminateAuthPasswordsCanResetPassword;
  106. use IlluminateContractsAuthAuthenticatable as AuthenticatableContract;
  107. use IlluminateContractsAuthCanResetPassword as CanResetPasswordContract;
  108.  
  109. class User extends Model implements AuthenticatableContract, CanResetPasswordContract {
  110.  
  111. use Authenticatable, CanResetPassword;
  112.  
  113. /**
  114. * The database table used by the model.
  115. *
  116. * @var string
  117. */
  118. protected $table = 'users';
  119.  
  120. /**
  121. * The attributes that are mass assignable.
  122. *
  123. * @var array
  124. */
  125. protected $fillable = ['name', 'email', 'password', 'role_id'];
  126.  
  127. /**
  128. * The attributes excluded from the model's JSON form.
  129. *
  130. * @var array
  131. */
  132. protected $hidden = ['password', 'remember_token'];
  133.  
  134. public function mail_entry(){
  135. return $this->hasOne('AppMail_entry');
  136. }
  137.  
  138.  
  139. public function role()
  140. {
  141. return $this->hasMany('AppRoles', 'id', 'role_id');
  142. }
  143. }
  144.  
  145. <div class="modal fade" id="user-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  146.  
  147. <div class="modal-dialog">
  148. <div class="modal-content">
  149. <div class="modal-header">
  150. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  151. <h4 class="modal-title" id="myModalLabel">Wijzigen</h4>
  152. </div>
  153.  
  154. <div class="modal-body">
  155. <div stype="padding:10px;">
  156. {!! Form::model($user, ['route' => 'update_user', 'id' => 'edit-user-form']) !!}
  157.  
  158. @include('admin/user/partials/_user-form', ['user' => $user, 'submit_tekst' => 'Gebruiker updaten'])
  159.  
  160. {!! Form::close() !!}
  161. </div>
  162. </div>
  163.  
  164. <div class="modal-footer">
  165. <button type="button" class="btn btn-default" id="save-user">Opslaan</button>
  166. <button type="button" class="btn btn-default" data-dismiss="modal">Annuleer</button>
  167. </div>
  168. </div>
  169. </div>
  170.  
  171. <script type="text/javascript">
  172.  
  173. var x = $('#user-modal :submit');
  174. console.log(x);
  175.  
  176. $('#user-modal :submit').remove();
  177.  
  178. $('#save-user').click(function(){
  179.  
  180. $.ajax({
  181. url : '{!! URL::route('update_user'); !!}',
  182. type: 'post',
  183. data : $('#edit-user-form').serialize(),
  184. success : function(result){
  185. console.log("succes" + result);
  186.  
  187. },
  188. error: function(result) {
  189. console.log("error" + result);
  190. if( result.status === 422 ) {
  191. //process validation errors here.
  192. var errors = result.responseJSON; //this will get the errors response data.
  193.  
  194. //show them somewhere in the markup
  195. //e.g
  196. errorsHtml = '<div class="alert alert-danger"><ul>';
  197.  
  198. $.each(errors, function( key, value ) {
  199. errorsHtml += '<li>' + value[0] + '</li>'; //showing only the first error.
  200. });
  201. errorsHtml += '</ul></div>';
  202.  
  203. $( '#edit-user-form' ).append( errorsHtml );
  204. }
  205. }
  206. });
  207. console.log('gelukt');
  208. });
  209. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement