fixed the config forms not working (controler needed update)
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Exceptions;
|
|||||||
use Exception;
|
use Exception;
|
||||||
use Illuminate\Auth\AuthenticationException;
|
use Illuminate\Auth\AuthenticationException;
|
||||||
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
|
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
|
||||||
|
use Illuminate\Validation\ValidationException;
|
||||||
|
|
||||||
class Handler extends ExceptionHandler
|
class Handler extends ExceptionHandler
|
||||||
{
|
{
|
||||||
@@ -63,4 +64,20 @@ class Handler extends ExceptionHandler
|
|||||||
? response()->json(['message' => $exception->getMessage()], 401)
|
? response()->json(['message' => $exception->getMessage()], 401)
|
||||||
: redirect()->guest(route('login'));
|
: redirect()->guest(route('login'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convert a validation exception into a response.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param \Illuminate\Validation\ValidationException $exception
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
protected function invalid($request, ValidationException $exception)
|
||||||
|
{
|
||||||
|
flash()->error("Some form fields were not filled correctly.");
|
||||||
|
|
||||||
|
return redirect($exception->redirectTo ?? url()->previous())
|
||||||
|
->withInput($request->except($this->dontFlash))
|
||||||
|
->withErrors($exception->errors(), $exception->errorBag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,20 +27,41 @@ class ProfileController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Edit own profile
|
* Edit own profile (this does not include auth settings etc)
|
||||||
*
|
*
|
||||||
* @param User $user
|
* @param User $user
|
||||||
* @return \Illuminate\View\View
|
* @return \Illuminate\View\View
|
||||||
*/
|
*/
|
||||||
public function edit()
|
public function editProfile()
|
||||||
{
|
{
|
||||||
return view('profile.edit')->with('user', \user());
|
return view('profile.edit-profile')->with('user', \user());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function editAccount()
|
||||||
|
{
|
||||||
|
return view('profile.edit-account', ['user' => user()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Store changed profile
|
* Store changed profile
|
||||||
*/
|
*/
|
||||||
public function store(Request $request)
|
public function storeProfile(Request $request)
|
||||||
|
{
|
||||||
|
$input = $this->validate($request, [
|
||||||
|
'bio' => ['nullable', VALI_TEXT],
|
||||||
|
'title' => ['required', VALI_LINE],
|
||||||
|
'website' => ['required', VALI_LINE],
|
||||||
|
]);
|
||||||
|
|
||||||
|
$user = user();
|
||||||
|
$user->fill($input->all());
|
||||||
|
$user->save();
|
||||||
|
|
||||||
|
flash()->success('Settings saved');
|
||||||
|
return back();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function storeAccount(Request $request)
|
||||||
{
|
{
|
||||||
$input = $this->validate($request, [
|
$input = $this->validate($request, [
|
||||||
'name' => [
|
'name' => [
|
||||||
@@ -53,9 +74,6 @@ class ProfileController extends Controller
|
|||||||
VALI_EMAIL,
|
VALI_EMAIL,
|
||||||
Rule::unique('users')->ignoreModel(\user()),
|
Rule::unique('users')->ignoreModel(\user()),
|
||||||
],
|
],
|
||||||
'bio' => ['nullable', VALI_TEXT],
|
|
||||||
'title' => ['required', VALI_LINE],
|
|
||||||
'website' => ['required', VALI_LINE],
|
|
||||||
'new_password' => ['nullable', 'confirmed', VALI_PASSWORD],
|
'new_password' => ['nullable', 'confirmed', VALI_PASSWORD],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
@@ -90,11 +108,6 @@ class ProfileController extends Controller
|
|||||||
return back();
|
return back();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function manageOauth()
|
|
||||||
{
|
|
||||||
return view('profile.logins', ['user' => user()]);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function forgetSocialLogin($id)
|
public function forgetSocialLogin($id)
|
||||||
{
|
{
|
||||||
$identity = user()->socialIdentities()->where('id', $id)->first();
|
$identity = user()->socialIdentities()->where('id', $id)->first();
|
||||||
|
|||||||
@@ -21,11 +21,13 @@ class WidgetFactory
|
|||||||
"</div>";
|
"</div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
public function par($text, $extraClasses='')
|
public function par($text, $extraClasses='', $escape=true)
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
"<div class=\"row\">".
|
"<div class=\"row\">".
|
||||||
"<p class=\"col-md-$this->fieldCols offset-md-$this->labelCols mb-2 ".e($extraClasses)."\">".e($text)."</o>".
|
"<p class=\"col-md-$this->fieldCols offset-md-$this->labelCols mb-2 ".e($extraClasses)."\">".
|
||||||
|
($escape ? e($text) : $text) .
|
||||||
|
"</p>".
|
||||||
"</div>";
|
"</div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ $aclass = $dropdown ? 'dropdown-item' : 'nav-link';
|
|||||||
|
|
||||||
{!! $li !!}
|
{!! $li !!}
|
||||||
<a class="{{ $aclass }}" href="{{ route('profile.edit') }}">
|
<a class="{{ $aclass }}" href="{{ route('profile.edit') }}">
|
||||||
<i class="fa-sliders fa-pr"></i>{{ __('Settings') }}
|
<i class="fa-sliders fa-pr"></i>{{ __('Profile') }}
|
||||||
</a>
|
</a>
|
||||||
{!! $endli !!}
|
{!! $endli !!}
|
||||||
|
|
||||||
{!! $li !!}
|
{!! $li !!}
|
||||||
<a class="{{ $aclass }}" href="{{ route('profile.manage-oauth') }}">
|
<a class="{{ $aclass }}" href="{{ route('account.edit') }}">
|
||||||
<i class="fa-key-modern fa-pr"></i>{{ __('Security') }}
|
<i class="fa-key-modern fa-pr"></i>{{ __('Account') }}
|
||||||
</a>
|
</a>
|
||||||
{!! $endli !!}
|
{!! $endli !!}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -5,12 +5,12 @@
|
|||||||
@section('content')
|
@section('content')
|
||||||
@php(Widget::setLayout(3, 7))
|
@php(Widget::setLayout(3, 7))
|
||||||
|
|
||||||
<form method="POST" action="{{route('profile.store')}}" class="row justify-content-center">
|
<form method="POST" action="{{route('account.store')}}" class="row justify-content-center">
|
||||||
@csrf
|
@csrf
|
||||||
|
|
||||||
<div class="col-md-10">
|
<div class="col-md-10">
|
||||||
{!! Widget::header(1, 'Login Settings') !!}
|
{!! Widget::header(1, 'Your Account') !!}
|
||||||
{!! Widget::par('Confirm using the save button at the bottom.') !!}
|
{!! Widget::par('Confirm using the save button at the bottom.', 'text-muted') !!}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-10 mt-3">
|
<div class="col-md-10 mt-3">
|
||||||
+5
-1
@@ -10,7 +10,11 @@
|
|||||||
<div class="col-md-10">
|
<div class="col-md-10">
|
||||||
@php(Widget::setLayout(3, 7))
|
@php(Widget::setLayout(3, 7))
|
||||||
|
|
||||||
{!! Widget::header(1, 'Settings') !!}
|
{!! Widget::header(1, 'Your Profile') !!}
|
||||||
|
{!! Widget::par('
|
||||||
|
Username can be changed on the
|
||||||
|
<a href="'.e(route('account.edit')).'">account settings</a> page.
|
||||||
|
', 'text-muted', false) !!}
|
||||||
|
|
||||||
{!! Widget::text('title', 'Display Name')->value($user->title)->required()->autofocus()
|
{!! Widget::text('title', 'Display Name')->value($user->title)->required()->autofocus()
|
||||||
->help('Shown on your profile page, tables, comments, etc.') !!}
|
->help('Shown on your profile page, tables, comments, etc.') !!}
|
||||||
+6
-3
@@ -30,10 +30,13 @@ Route::group(['middleware' => 'auth'], function () {
|
|||||||
Route::group([
|
Route::group([
|
||||||
'prefix' => 'profile',
|
'prefix' => 'profile',
|
||||||
], function () {
|
], function () {
|
||||||
Route::get('edit', 'ProfileController@edit')->name('profile.edit');
|
Route::get('edit', 'ProfileController@editProfile')->name('profile.edit');
|
||||||
Route::post('edit', 'ProfileController@store')->name('profile.store');
|
Route::post('edit', 'ProfileController@storeProfile')->name('profile.store');
|
||||||
|
|
||||||
Route::post('create', 'TableController@storeNew')->name('table.storeNew');
|
Route::post('create', 'TableController@storeNew')->name('table.storeNew');
|
||||||
Route::get('logins', 'ProfileController@manageOauth')->name('profile.manage-oauth');
|
|
||||||
|
Route::get('logins', 'ProfileController@editAccount')->name('account.edit');
|
||||||
|
Route::post('logins', 'ProfileController@storeAccount')->name('account.store');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user