mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-08 23:14:33 -04:00
Make sure user is allowed to migrate (#3468)
This commit is contained in:
parent
be96bef3f0
commit
d9a3b5453a
@ -31,6 +31,11 @@ class StepsController extends BaseController
|
||||
{
|
||||
use GenerateMigrationResources;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->middleware('migration');
|
||||
}
|
||||
|
||||
private $access = [
|
||||
'auth' => [
|
||||
'steps' => ['MIGRATION_TYPE'],
|
||||
|
@ -63,5 +63,6 @@ class Kernel extends HttpKernel
|
||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||
'lookup' => \App\Http\Middleware\DatabaseLookup::class,
|
||||
'permissions.required' => \App\Http\Middleware\PermissionsRequired::class,
|
||||
'migration' => \App\Http\Middleware\EligibleForMigration::class,
|
||||
];
|
||||
}
|
||||
|
24
app/Http/Middleware/EligibleForMigration.php
Normal file
24
app/Http/Middleware/EligibleForMigration.php
Normal file
@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
|
||||
class EligibleForMigration
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (is_null(auth()->user()->public_id)) {
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
return redirect('/settings/account_management');
|
||||
}
|
||||
}
|
@ -493,6 +493,11 @@ class User extends Authenticatable
|
||||
|
||||
return array_combine($keys, $values);
|
||||
}
|
||||
|
||||
public function eligibleForMigration()
|
||||
{
|
||||
return is_null($this->public_id);
|
||||
}
|
||||
}
|
||||
|
||||
User::created(function ($user)
|
||||
|
@ -238,25 +238,28 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{!! trans('texts.migrate_to_next_version') !!}</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
|
||||
<div class="col-lg-8 col-sm-8">
|
||||
<div clasS="form-group">
|
||||
{!! trans('texts.migrate_intro_text') !!}
|
||||
</div>
|
||||
@if(Auth::user()->eligibleForMigration())
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{!! trans('texts.migrate_to_next_version') !!}</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
|
||||
<div class="col-md-12">
|
||||
<div class="form-group">
|
||||
<a class="btn btn-primary btn-lg" href="/migration/start">{!! trans('texts.start_the_migration') !!}</a>
|
||||
<div class="col-lg-8 col-sm-8">
|
||||
<div clasS="form-group">
|
||||
{!! trans('texts.migrate_intro_text') !!}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12">
|
||||
<div class="form-group">
|
||||
<a class="btn btn-primary btn-lg"
|
||||
href="/migration/start">{!! trans('texts.start_the_migration') !!}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
{!! Former::close() !!}
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
@section('content')
|
||||
|
||||
|
||||
<center>
|
||||
@if (!session(SESSION_USER_ACCOUNTS) || count(session(SESSION_USER_ACCOUNTS)) < 5)
|
||||
{!! Button::success(trans('texts.add_company'))->withAttributes(['onclick' => 'showSignUp()']) !!}
|
||||
|
Loading…
x
Reference in New Issue
Block a user