added landing page event
This commit is contained in:
parent
7feb9e9081
commit
dd9e95f57e
22
app/Events/Auth/LandingPageShowing.php
Normal file
22
app/Events/Auth/LandingPageShowing.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Events\Auth;
|
||||
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class LandingPageShowing
|
||||
{
|
||||
use SerializesModels;
|
||||
|
||||
public $user;
|
||||
|
||||
/**
|
||||
* Create a new event instance.
|
||||
*
|
||||
* @param $user
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
$this->user = $user;
|
||||
}
|
||||
}
|
@ -3,6 +3,7 @@
|
||||
namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Abstracts\Http\Controller;
|
||||
use App\Events\Auth\LandingPageShowing;
|
||||
use App\Http\Requests\Auth\User as Request;
|
||||
use App\Jobs\Auth\CreateUser;
|
||||
use App\Jobs\Auth\DeleteUser;
|
||||
@ -46,25 +47,12 @@ class Users extends Controller
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$routes = [
|
||||
'dashboard' => trans_choice('general.dashboards', 1),
|
||||
'items.index' => trans_choice('general.items', 2),
|
||||
'invoices.index' => trans_choice('general.invoices', 2),
|
||||
'revenues.index' => trans_choice('general.revenues', 2),
|
||||
'customers.index' => trans_choice('general.customers', 2),
|
||||
'bills.index' => trans_choice('general.bills', 2),
|
||||
'payments.index' => trans_choice('general.payments', 2),
|
||||
'vendors.index' => trans_choice('general.vendors', 2),
|
||||
'accounts.index' => trans_choice('general.accounts', 2),
|
||||
'transfers.index' => trans_choice('general.transfers', 2),
|
||||
'transactions.index' => trans_choice('general.transactions', 2),
|
||||
'reconciliations.index' => trans_choice('general.reconciliations', 2),
|
||||
'reports.index' => trans_choice('general.reports', 2),
|
||||
'settings.index' => trans_choice('general.settings', 2),
|
||||
'categories.index' => trans_choice('general.categories', 2),
|
||||
'currencies.index' => trans_choice('general.currencies', 2),
|
||||
'taxes.index' => trans_choice('general.taxes', 2),
|
||||
];
|
||||
$u = new \stdClass();
|
||||
$u->landing_pages = [];
|
||||
|
||||
event(new LandingPageShowing($u));
|
||||
|
||||
$landing_pages = $u->landing_pages;
|
||||
|
||||
$roles = Role::all()->reject(function ($r) {
|
||||
return $r->hasPermission('read-client-portal');
|
||||
@ -72,7 +60,7 @@ class Users extends Controller
|
||||
|
||||
$companies = user()->companies()->take(10)->get()->sortBy('name')->pluck('name', 'id');
|
||||
|
||||
return view('auth.users.create', compact('roles', 'companies', 'routes'));
|
||||
return view('auth.users.create', compact('roles', 'companies', 'landing_pages'));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -116,25 +104,12 @@ class Users extends Controller
|
||||
abort(403);
|
||||
}
|
||||
|
||||
$routes = [
|
||||
'dashboard' => trans_choice('general.dashboards', 1),
|
||||
'items.index' => trans_choice('general.items', 2),
|
||||
'invoices.index' => trans_choice('general.invoices', 2),
|
||||
'revenues.index' => trans_choice('general.revenues', 2),
|
||||
'customers.index' => trans_choice('general.customers', 2),
|
||||
'bills.index' => trans_choice('general.bills', 2),
|
||||
'payments.index' => trans_choice('general.payments', 2),
|
||||
'vendors.index' => trans_choice('general.vendors', 2),
|
||||
'accounts.index' => trans_choice('general.accounts', 2),
|
||||
'transfers.index' => trans_choice('general.transfers', 2),
|
||||
'transactions.index' => trans_choice('general.transactions', 2),
|
||||
'reconciliations.index' => trans_choice('general.reconciliations', 2),
|
||||
'reports.index' => trans_choice('general.reports', 2),
|
||||
'settings.index' => trans_choice('general.settings', 2),
|
||||
'categories.index' => trans_choice('general.categories', 2),
|
||||
'currencies.index' => trans_choice('general.currencies', 2),
|
||||
'taxes.index' => trans_choice('general.taxes', 2),
|
||||
];
|
||||
$u = new \stdClass();
|
||||
$u->landing_pages = [];
|
||||
|
||||
event(new LandingPageShowing($u));
|
||||
|
||||
$landing_pages = $u->landing_pages;
|
||||
|
||||
if ($user->can('read-client-portal')) {
|
||||
// Show only roles with customer permission
|
||||
@ -150,7 +125,7 @@ class Users extends Controller
|
||||
|
||||
$companies = user()->companies()->take(10)->get()->sortBy('name')->pluck('name', 'id');
|
||||
|
||||
return view('auth.users.edit', compact('user', 'companies', 'roles', 'routes'));
|
||||
return view('auth.users.edit', compact('user', 'companies', 'roles', 'landing_pages'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
42
app/Listeners/Auth/AddLandingPages.php
Normal file
42
app/Listeners/Auth/AddLandingPages.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
namespace App\Listeners\Auth;
|
||||
|
||||
use App\Events\Auth\LandingPageShowing as Event;
|
||||
|
||||
class AddLandingPages
|
||||
{
|
||||
/**
|
||||
* Handle the event.
|
||||
*
|
||||
* @param Event $event
|
||||
* @return void
|
||||
*/
|
||||
public function handle(Event $event)
|
||||
{
|
||||
$routes = [
|
||||
'dashboard' => trans_choice('general.dashboards', 1),
|
||||
'items.index' => trans_choice('general.items', 2),
|
||||
'invoices.index' => trans_choice('general.invoices', 2),
|
||||
'revenues.index' => trans_choice('general.revenues', 2),
|
||||
'customers.index' => trans_choice('general.customers', 2),
|
||||
'bills.index' => trans_choice('general.bills', 2),
|
||||
'payments.index' => trans_choice('general.payments', 2),
|
||||
'vendors.index' => trans_choice('general.vendors', 2),
|
||||
'accounts.index' => trans_choice('general.accounts', 2),
|
||||
'transfers.index' => trans_choice('general.transfers', 2),
|
||||
'transactions.index' => trans_choice('general.transactions', 2),
|
||||
'reconciliations.index' => trans_choice('general.reconciliations', 2),
|
||||
'reports.index' => trans_choice('general.reports', 2),
|
||||
'settings.index' => trans_choice('general.settings', 2),
|
||||
'categories.index' => trans_choice('general.categories', 2),
|
||||
'currencies.index' => trans_choice('general.currencies', 2),
|
||||
'taxes.index' => trans_choice('general.taxes', 2),
|
||||
'users.index' => trans_choice('general.users', 2),
|
||||
];
|
||||
|
||||
foreach($routes as $key => $value) {
|
||||
$event->user->landing_pages[$key] = $value;
|
||||
}
|
||||
}
|
||||
}
|
@ -29,6 +29,9 @@ class Event extends Provider
|
||||
'Illuminate\Auth\Events\Logout' => [
|
||||
'App\Listeners\Auth\Logout',
|
||||
],
|
||||
'App\Events\Auth\LandingPageShowing' => [
|
||||
'App\Listeners\Auth\AddLandingPages',
|
||||
],
|
||||
'App\Events\Purchase\BillCreated' => [
|
||||
'App\Listeners\Purchase\CreateBillCreatedHistory',
|
||||
'App\Listeners\Purchase\IncreaseNextBillNumber',
|
||||
|
19
modules/OfflinePayments/Listeners/AddLandingPage.php
Normal file
19
modules/OfflinePayments/Listeners/AddLandingPage.php
Normal file
@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\OfflinePayments\Listeners;
|
||||
|
||||
use App\Events\Auth\LandingPageShowing as Event;
|
||||
|
||||
class AddLandingPage
|
||||
{
|
||||
/**
|
||||
* Handle the event.
|
||||
*
|
||||
* @param Event $event
|
||||
* @return void
|
||||
*/
|
||||
public function handle(Event $event)
|
||||
{
|
||||
$event->user->landing_pages['offline-payments.settings.edit'] = trans('offline-payments::general.name');
|
||||
}
|
||||
}
|
19
modules/PaypalStandard/Listeners/AddLandingPage.php
Normal file
19
modules/PaypalStandard/Listeners/AddLandingPage.php
Normal file
@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\PaypalStandard\Listeners;
|
||||
|
||||
use App\Events\Auth\LandingPageShowing as Event;
|
||||
|
||||
class AddLandingPage
|
||||
{
|
||||
/**
|
||||
* Handle the event.
|
||||
*
|
||||
* @param Event $event
|
||||
* @return void
|
||||
*/
|
||||
public function handle(Event $event)
|
||||
{
|
||||
$event->user->landing_pages['paypal-standard.settings.edit'] = trans('paypal-standard::general.name');
|
||||
}
|
||||
}
|
@ -27,7 +27,7 @@
|
||||
|
||||
{{ Form::selectGroup('locale', trans_choice('general.languages', 1), 'flag', language()->allowed(), setting('default.locale')) }}
|
||||
|
||||
{{ Form::selectGroup('landing_page', trans('auth.landing_page'), 'sign-in-alt', $routes, 'dashboard') }}
|
||||
{{ Form::selectGroup('landing_page', trans('auth.landing_page'), 'sign-in-alt', $landing_pages, 'dashboard') }}
|
||||
|
||||
@if (setting('default.use_gravatar', '0') == '1')
|
||||
@stack('picture_input_start')
|
||||
|
@ -28,7 +28,7 @@
|
||||
|
||||
{{ Form::selectGroup('locale', trans_choice('general.languages', 1), 'flag', language()->allowed(), $user->locale) }}
|
||||
|
||||
{{ Form::selectGroup('landing_page', trans('auth.landing_page'), 'sign-in-alt', $routes, $user->landing_page) }}
|
||||
{{ Form::selectGroup('landing_page', trans('auth.landing_page'), 'sign-in-alt', $landing_pages, $user->landing_page) }}
|
||||
|
||||
@if (setting('default.use_gravatar', '0') == '1')
|
||||
@stack('picture_input_start')
|
||||
|
Loading…
x
Reference in New Issue
Block a user