public function postLogin(Request $request) { $this->validate($request, ['name' => 'required', 'password' => 'required']); $credentials = $request->only('name', 'password'); try { $user = user::where('name', '=', $credentials['name'])->firstOrFail(); } catch (ModelNotFoundException $e) { return redirect('/')->withInput($request->only('name', 'remember'))->withErrors(['name' => 'These credentials do not match our records.']); } if ($user) { session()->regenerate(); Session::set('user', $user); $group = group::find($user->groupid); if ($group->count()) { Session::set('group', $group); $privileges = privileges_group::select('p.privilegesid as id', 'p.privilegesname as name', 'p.privilegesdesc as desc')->leftJoin('mprivileges as p', 'p.privilegesid', '=', 'mprivileges_group.privilegesid')->where('mprivileges_group.groupid', '=', $group->groupid)->get(); Session::set('privileges', $privileges); } } if ($this->auth->attempt($credentials, $request->has('remember'))) { return redirect('/admin'); } return redirect('/')->withInput($request->only('name', 'remember'))->withErrors(['password' => 'Password is wrong']); }
/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, Request $request) { $rules = ['login' => 'required|unique:musers,name,' . $id, 'email' => 'required|email', 'password' => 'required|confirmed']; $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { return redirect()->back()->withErrors($validator->errors())->withInput(); } $user = user::find($id); //cek password $newpassword = ''; $password = $request->get('password'); $oldpassword = $user->password; if ($request->get('password') === $oldpassword) { $newpassword = $oldpassword; } else { $newpassword = Hash::make($password); } //end cek $user->firstname = $request->get('firstname'); $user->lastname = $request->get('lastname'); $user->name = $request->get('login'); $user->email = $request->get('email'); $user->password = $newpassword; $user->groupid = $request->get('group'); $user->photo = $request->get('photo'); $user->status = $request->get('status'); $user->updated_at = Date('Y-m-d'); $user->save(); return redirect('/admin/user'); }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { $user = user::where('groupid', '=', $id); if ($user->count()) { $errors[] = 'maaf, group ini dipakai oleh beberapa group, jika anda yakin, mohon hapus user yang terkait dengan group ini'; return redirect()->back()->withErrors($errors); } $group = group::find($id); $groupchild = group::where('parent', '=', $id); if ($groupchild->count()) { $errors[] = 'maaf, group ini memiliki sub group!'; return redirect()->back()->withErrors($errors); } //Clear permission for this group \DB::table('mprivileges_group')->where('groupid', '=', $id)->delete(); $group->delete(); return redirect('/admin/group'); }