datatable.directory codebase https://datatable.directory/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
datatable.directory/app/Http/Controllers/ProfileController.php

57 lines
1.2 KiB

<?php
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
/**
* Profile page and profile settings
*/
class ProfileController extends Controller
{
/**
* Show the user's profile / dashboard.
*
* @return \Illuminate\View\View
*/
public function view(User $user)
{
$tables = $user->tables()
->with('revision:id,row_count')
->orderByDesc('updated_at')
->paginate(10);
return view('profile.view')->with(compact('tables', 'user'));
}
/**
* Edit own profile (this does not include auth settings etc)
*
* @return \Illuminate\View\View
*/
public function editProfile()
{
return view('profile.edit-profile')->with('user', \user());
}
/**
* Store changed profile
*/
public function storeProfile(Request $request)
{
$input = $this->validate($request, [
'title' => ['required', VALI_LINE],
'bio' => ['nullable', VALI_TEXT],
'website' => ['nullable', VALI_LINE],
]);
$user = user();
$user->fill($input->all());
$user->save();
flash()->success('Settings saved');
return back();
}
}