Simple widget manager for backpackforlaravel.
Via Composer
composer require almosoft/widgetmanager
php artisan almosoft:widgetmanager:install
During installation your current dashboard view will be replaced with standard dashboard view from backpack.
After install you need to fix adminlte js. Adminlte fix
composer require almosoft/widgetmanager
php artisan migrate
php artisan db:seed --class=almosoft\widgetmanager\database\seeds\WidgetLayoutsSeeder
- Add menus to sidebar:
php artisan backpack:base:add-sidebar-content "<li><a href='{{ backpack_url('widget') }}'><i class='fa fa-square-o'></i> <span>{{ trans('almosoft::base.Widgets') }}</span></a></li>"
php artisan backpack:base:add-sidebar-content "<li><a href='{{ backpack_url('widgetlayout') }}'><i class='fa fa-square-o'></i> <span>{{ trans('almosoft::base.Widgetboard_Layouts') }}</span></a></li>"
php artisan backpack:base:add-sidebar-content "<li><a href='{{ backpack_url('widgetboard') }}'><i class='fa fa-square-o'></i> <span>{{ trans('almosoft::base.Widgetboards') }}</span></a></li>"
php artisan backpack:base:add-sidebar-content "<li><a href='{{ backpack_url('widgetboardwidget') }}'><i class='fa fa-square-o'></i> <span>{{ trans('almosoft::base.Widgetboard-Widgets') }}</span></a></li>"
- Publish WidgetBodyController controller:
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.widgetbodycontroller"
- Publish assets:
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.assets"
- Publish config:
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.config"
- Publish views (optionally):
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.views"
- Publish languages (optionally):
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.langs"
- Update autoloader:
composer dump-autoload
Add widgetboard to dashboard view (resources/views/vendor/backpack/base/dashboard.blade.php)
<div id="widgetboard">
{!! widgetmanager::GetWidgetBoard('system widgetboard') !!}
</div>
Or single widget:
{!! widgetmanager::GetWidget('widget name') !!}
If dashboard view is missing, you need to publish it from backpackforlaravel:
php artisan vendor:publish --provider="Backpack\Base\BaseServiceProvider" --tag="views"
- Add widgets from Widgets menu;
If image is not showing, probabaly you need to create storage link:
php artisan storage:link
- Add functions for widgets in WidgetBodyController, which returns body of widget;
- Optionally add footer functions: Function name=BodyFunction+Footer for static widgets in WidgetBodyController, which returns footer of widget;
- Add widgets to widgetboard from main dashboard;
AdminLTE has error with box-refresh as described in AdminLTE issue 1976, but not fixed in version 2.4.8 yet. Fixed file adminlte.js copy to your public\vendor\adminlte\dist\js\ directory.
php artisan vendor:publish --provider="almosoft\widgetmanager\widgetmanagerServiceProvider" --tag="widgetmanager.adminltefix" --force
Please see the changelog for more information on what has changed recently.
Please see contributing.md for details and a todolist.
If you discover any security related issues, please email author email instead of using the issue tracker.
license. Please see the license file for more information.