Advertisement
Guest User

Untitled

a guest
May 14th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.70 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Http\Controllers;
  4.  
  5. use Illuminate\Http\Request;
  6. use App\User;
  7. use Illuminate\Validation\Validator;
  8. use Illuminate\Support\Facades\Auth;
  9.  
  10. class UserController extends Controller {
  11.  
  12.     public function index() {
  13.         $users = User::all();
  14.         $title = "List users";
  15.         return view('users.list', compact('title', 'users'));
  16.     }
  17.  
  18.     public function create() {
  19.         $title = "Create user";
  20.         return view('users.add', compact('title'));
  21.  
  22.     }
  23.  
  24.     public function store(Request $request) {
  25.         if ($request->has('cancel')) {
  26.             return redirect()->action('UserController@index');
  27.         }
  28.         $user = $request->validate(['name' => 'required|regex:/^[\pL\s]+$/u', 'age' => 'required|integer|between:1,120', 'phone' => 'regex:/^(\+351)?\s?\d{3}\s?\d{3}\s?\d{3}$/', 'profile_photo' => 'image|mimes:jpeg,jpg,jpe,png|max:2048',], [// Custom Messages
  29.             'name.regex' => 'Name must only contain letters and spaces.', 'phone.regex' => 'Phone with wrong format. Please insert (+351) XXX XXX XXX.', 'profile_photo.mimes' => 'Invalid format. Accept format .jpg/.png/.gif', 'profile_photo.max' => 'Max size 2Mb.']);
  30.         User::create($user);
  31.         return redirect()->action('UserController@index');
  32.     }
  33.  
  34.  
  35.  
  36.     /** Feito Nuno **/
  37.     public function editPassword() {
  38.         $title = "Edit User Password";
  39.         $user = User::findOrFail(Auth::id());
  40.  
  41.         return view('users.editPassword', compact('title', 'user'));
  42.     }
  43.  
  44.  
  45.  
  46.     public function savePassword(Request $request, $id) {
  47.         if ($request->has('cancel')) {
  48.             return redirect()->action('UserController@profile');
  49.         }
  50.  
  51.         $user = $request->validate(['old_password' => 'required|regex:/^[a-zA-Z0-9]{8,}$/u', 'password' => 'required|regex:/^[a-zA-Z0-9]{8,}$/u', 'password_confirmation' => 'required|regex:/^[a-zA-Z0-9]{8,}$/u',], [// Custom Messages
  52.             'old_password.regex' => 'Password with minimum eight letters or numbers.',
  53.         ], [ // Custom Messages
  54.             'old_password.required' => 'Não colocaste a password antiga!!',]);
  55.  
  56.         if ($user['password'] == $user['password_confirmation']) {
  57.             $userModel = User::findOrFail($id);
  58.  
  59.             if ($userModel->password == $user['old_password']) {
  60.                 $userModel->fill($user);
  61.                 $userModel->save();
  62.             }
  63.  
  64.             //var_dump($userModel);
  65.             return redirect()->action('HomeController@index');
  66.         }
  67.  
  68.  
  69.     }
  70.  
  71.     public function editProfile() {
  72.         $title = "Edit User Profile";
  73.  
  74.         $user = User::findOrFail(Auth::id());
  75.         return view('users.editProfile', compact('title', 'user'));
  76.     }
  77.  
  78.     public function saveProfile(Request $request, $id) {
  79.         if ($request->has('cancel')) {
  80.             return redirect()->action('HomeController@index');
  81.         }
  82.         $user = $request->validate(['email' => 'required|string|email|max:255|unique:users', 'name' => 'required|string|max:255', 'phone' => 'required|regex:/^[0-9]{9}$/u', 'profile_photo' => 'required|regex:/^[a-zA-Z0-9]{8,}$/u',], [// Custom Messages
  83.             'email.regex' => 'Password with minimum eight letters or numbers.',]);
  84.  
  85.         $userModel = User::findOrFail($id);
  86.  
  87.         if ($userModel->password == $user->old_password) {
  88.             $userModel->fill($user);
  89.             $userModel->save();
  90.         }
  91.  
  92. //  email, name,
  93. //  phone and profile_photo .
  94.  
  95.         //var_dump($userModel);
  96.         return redirect()->action('HomeController@index');
  97.     }
  98.  
  99.  
  100.     public function destroy($id) {
  101.         $user = User::find($id);
  102.         $user->delete();
  103.         return redirect()->action('UserController@index');
  104.     }
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement