Package Data | |
---|---|
Maintainer Username: | ianrothmann |
Maintainer Contact: | ian@conceptsphere.com (Ian Rothmann) |
Package Create Date: | 2017-07-25 |
Package Last Update: | 2021-02-13 |
Language: | PHP |
License: | Apache-2.0 |
Last Refreshed: | 2024-11-17 03:05:16 |
Package Statistics | |
---|---|
Total Downloads: | 383 |
Monthly Downloads: | 1 |
Daily Downloads: | 0 |
Total Stars: | 0 |
Total Watchers: | 3 |
Total Forks: | 0 |
Total Open Issues: | 0 |
RocketFramework for Vue Laravel Helpers.
composer install ianrothmann/rocket-laravel-framework
In config/app.php
Service provider
IanRothmann\RocketLaravelAppFramework\ServiceProviders\RocketAppServiceProvider::class
Facades
'Rocket' =>IanRothmann\RocketLaravelAppFramework\Facades\Rocket::class
Publish the config
php artisan vendor:publish --provider="IanRothmann\RocketLaravelAppFramework\ServiceProviders\RocketAppServiceProvider" --tag="config"
Menus can be specified in middleware, but can also be modified in any controller before passing the view.
You can give the menu a name, for instance "main", and then chain the items. The icon is optional. If you need a custom item, you can use ->custom
Rocket::menu('main')
->route(label,routeName,paramsArray,icon,userRightOrClosureReturningBool)
->route('Change Password','password.change',[],'person','user_edit')
->link(name,url,icon,userRightOrClosureReturningBool)
->custom(RocketMenu::item("Google")->link("http://google.com")->hint('Go to Google')->icon('delete')->id('google')->target('_blank')->right(userRightOrClosureReturningBool));
Groups are also possible. Specify ->group
. This returns the item. Then specify ->subMenu()
, and now you can chain the items to the submenu. You need to start with Rocket::menu('main')
again to add main menu items.
Rocket::menu('main')
->group('Rocket CRUD')
->subMenu()
->route('CRUD Table','rocket.crud.table');
Rocket::menu('main')->route('Home','home',[]);
Sometimes one would like to prepend items (especially when modifying middleware defined menus from the controller. All item functions can start with push
to prepend.
Rocket::menu('main')->pushRoute('Home','home',[]); //pushLink, pushGroup, pushCustom etc.
This package integrates with VueBridge and makes the menu available in $store.state.server.rocketMenus
, for use with rocket-framework-menu
in RocketVueAppFramework
:
<rocket-framework-menu :menu="$store.state.server.rocketMenus&&$store.state.server.rocketMenus.main"></rocket-framework-menu>
Use Rocket::breadcrumbs()
, to access the BreadcrumbsService:
You may either use:
@include('rocket::breadcrumbsmenu')
to show a menu icon with the items in a menu
or
@include('rocket::breadcrumbs')
To display a classic breadcrumbs bar. Everything is only implemented in Vuetify. You cannot use both, be sure to only use one of them on a page.
in config/rocketframework.php
, you may set
'breadcrumbs' => [
'number'=>4, //Number of breadcrumbs to save
'default'=>'show' //Default behaviour to show or hide breadcrumbs
]
On any page you may call: Rocket::breadcrumbs()->show()
or Rocket::breadcrumbs()->hide()
to bread away from the default behaviour. You can also set a namespace for the breadcrumbs to limit them on certain parts/sessions on the system. For instance: Rocket::breadcrumbs()->setBreadcrumbsNamespace($clientid)
This enables you to use blade syntax @editabletext(language_line_code)
or @editablehtml(language_line_code)
. If edit mode is active, a user will be able to edit the text in place. This is useful for public facing websites etc.
Rocket::activateLanguageEdit()
or Rocket::deactivateLanguageEdit()
to enter edit mode.language_lines
table, make sure the table exists - for more info look at their readme. You have to install the package in the project and override the service providers as in their readme.