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\Http\Requests;
- use App\Http\Controllers\Controller;
- use App\User as User;
- use App\UserType as UserType;
- class UserController extends Controller
- {
- protected $title = 'Usuário';
- protected $searchable = array(
- 'name' => 'l',
- 'email' => 'l'
- );
- /**
- * Display a listing of the resource.
- *
- * @return Response
- */
- public function index()
- {
- // var_dump(\Input::except('page'));
- $title = $this->title;
- $users = User::Search(\Input::except('page'), $this->searchable)->paginate(10)
- ->OrderBy(\Input::except('page'))->paginate(10);
- $links = $users->appends(\Input::except('page'));
- $searchable = \Input::except('page');
- return view('user.index')->with(compact('title', 'searchable', 'links', 'users'));
- }
- /**
- * Show the form for creating a new resource.
- *
- * @return Response
- */
- public function create()
- {
- $title = $this->title;
- $userTypes = UserType::lists('name', 'id');
- return view('user.form')->with(compact('title', 'userTypes'));
- }
- /**
- * Store a newly created resource in storage.
- *
- * @return Response
- */
- public function store(Request $request)
- {
- $attributes = array(
- 'name' => 'nome',
- 'email' => 'Email',
- 'user_types_id' => 'Tipo de usuário',
- 'password' => 'Senha',
- 'password_confirmation' => 'Confirmar senha',
- );
- $rules = array(
- 'name' => 'required',
- 'email' => 'required|unique:users',
- 'user_types_id' => 'required',
- 'password' => 'required|confirmed|min:6',
- 'image' => 'image|max:300'
- );
- $validator = \Validator::make(\Input::all(), $rules);
- $validator->setAttributeNames($attributes);
- if($validator->fails()) {
- return redirect()->back()
- ->withErrors($validator)
- ->withInput( \Input::all() );
- } else {
- $user = new User;
- $user->name = \Input::get('name');
- $user->email = \Input::get('email');
- $user->user_types_id = \Input::get('user_types_id');
- $user->password = \Hash::make(\Input::get('password'));
- $user->save();
- if ($request->hasFile('image')) {
- $user->image = $user->id . '.' . $request->file('image')->getClientOriginalExtension();
- $request->file('image')->move(
- base_path() . '/public/images/profile/', $user->image
- );
- $user->save();
- }
- \Session::flash('message_success', $this->title . ' criado com sucesso!');
- return redirect()->route('user.index');
- }
- }
- /**
- * Display the specified resource.
- *
- * @param int $id
- * @return Response
- */
- public function show($id)
- {
- //
- }
- /**
- * Show the form for editing the specified resource.
- *
- * @param int $id
- * @return Response
- */
- public function edit($id)
- {
- $title = $this->title;
- $user = User::find($id);
- $userTypes = UserType::lists('name', 'id');
- return view('user.form')->with(compact('title', 'user', 'userTypes'));
- }
- /**
- * Update the specified resource in storage.
- *
- * @param int $id
- * @return Response
- */
- public function update(Request $request, $id)
- {
- $attributes = array(
- 'name' => 'nome',
- 'email' => 'Email',
- 'user_types_id' => 'Tipo de usuário',
- 'password' => 'Senha',
- 'password_confirmation' => 'Confirmar senha',
- );
- $rules = array(
- 'name' => 'required',
- 'email' => 'required|unique:users,email,'.$id,
- 'user_types_id' => 'required',
- 'image' => 'image|max:300'
- );
- if(!empty(\Input::get('password'))){
- $rules['password'] = 'required|confirmed|min:6';
- }
- $validator = \Validator::make(\Input::all(), $rules);
- $validator->setAttributeNames($attributes);
- if($validator->fails()) {
- return redirect()->back()
- ->withErrors($validator)
- ->withInput( \Input::all() );
- } else {
- $user = User::find($id);
- $user->name = \Input::get('name');
- $user->email = \Input::get('email');
- $user->user_types_id = \Input::get('user_types_id');
- if(!empty(\Input::get('password'))){
- $user->password = \Hash::make(\Input::get('password'));
- }
- if ($request->hasFile('image')) {
- $user->image = $user->id . '.' . $request->file('image')->getClientOriginalExtension();
- $request->file('image')->move(
- base_path() . '/public/images/profile/', $user->image
- );
- }
- $user->save();
- \Session::flash('message_success', $this->title . ' editado com sucesso!');
- return redirect()->route('user.index');
- }
- }
- /**
- * Remove the specified resource from storage.
- *
- * @param int $id
- * @return Response
- */
- public function destroy($id)
- {
- $user = User::find($id);
- $user->delete();
- \Session::flash('message_success', $this->title.' removido com sucesso!');
- return redirect()->route('user.index');
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement