Merge pull request #570 from openclassify/dia

#1393 [users] Admin - Go to users ads link
This commit is contained in:
Fatih Alp 2020-05-20 14:51:00 +03:00 committed by GitHub
commit 55546840e4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 62 additions and 4 deletions

View File

@ -0,0 +1,5 @@
<?php
return [
'view_ads' => 'View Ads',
];

View File

@ -4,9 +4,8 @@ use Anomaly\Streams\Platform\Addon\AddonServiceProvider;
use Anomaly\Streams\Platform\Ui\ControlPanel\Component\Navigation\Event\SortNavigation;
use Anomaly\Streams\Platform\Ui\Table\Event\TableIsQuerying;
use Illuminate\Pagination\AbstractPaginator;
use Visiosoft\DefaultadminTheme\Http\Controller\Admin\PreferencesController;
use Visiosoft\DefaultadminTheme\Http\Controller\Admin\SettingsController;
use Visiosoft\DefaultadminTheme\Listener\AddGsmFilter;
use Visiosoft\DefaultadminTheme\Listener\AddViewAdsButton;
use Visiosoft\DefaultadminTheme\Listener\ApplySorting;
/**
@ -29,8 +28,9 @@ class DefaultadminThemeServiceProvider extends AddonServiceProvider
ApplySorting::class,
],
TableIsQuerying::class => [
AddGsmFilter::class
]
AddGsmFilter::class,
AddViewAdsButton::class
],
];
/**

View File

@ -0,0 +1,53 @@
<?php namespace Visiosoft\DefaultadminTheme\Listener;
use Anomaly\Streams\Platform\Ui\Table\Event\TableIsQuerying;
use Anomaly\UsersModule\User\Contract\UserRepositoryInterface;
use Anomaly\UsersModule\User\Table\UserTableBuilder;
class AddViewAdsButton
{
/**
* @var UserRepositoryInterface
*/
protected $userRepository;
/**
* AddViewAdsAction constructor.
* @param UserRepositoryInterface $userRepository
*/
public function __construct(UserRepositoryInterface $userRepository)
{
$this->userRepository = $userRepository;
}
/**
* @param TableIsQuerying $event
*/
public function handle(TableIsQuerying $event)
{
$builder = $event->getBuilder();
if (get_class($builder) == UserTableBuilder::class) {
$this->addViewAdsButton($builder);
}
}
/**
* Add a button to view ads.
*
* @param UserTableBuilder $builder
*/
protected function addViewAdsButton(UserTableBuilder $builder)
{
$buttons = $builder->getButtons();
$dropdown = array_merge($buttons['settings']['dropdown'], [
"ads" => [
"text" => trans('visiosoft.theme.defaultadmin::button.view_ads'),
"href" => "admin/advs?filter_User={entry.id}"
]
]);
$buttons['settings']['dropdown'] = $dropdown;
$builder->setButtons($buttons);
}
}