davidyell / nice-admin
A roll up plugin of various bits to improve the look of admin areas index view.
Installs: 3 767
Dependents: 0
Suggesters: 0
Security: 0
Stars: 10
Watchers: 4
Forks: 3
Open Issues: 1
Type:cakephp-plugin
Requires
- php: >=5.6.0
- cakephp/cakephp: ~3.4
Requires (Dev)
- cakephp/cakephp-codesniffer: ^2.0
- phpunit/phpunit: ^4.8
Suggests
- twbs/bootstrap: Twitter Bootstrap front-end framework, for styles and layout.
README
This plugin is designed to make admin areas baked from CakePHP look a little nicer and be easier to use and understand.
Requirements
- CakePHP 3.x
- PHP 5.4.16+
- TwitterBootstrap (optional - just for styling)
What do you get in the box?
ActionButtons Helper
Helper for replacing the 'Actions' cell contents in index views with buttons rather than textual links.
StatusLights Helper
Helper for replacing a Status column in an index view with a nice coloured label based on the status_id.
Boolean Helper
This will change boolean display fields into ticks (✔) and crosses (✘) rather than 1/0.
Get the code
composer require davidyell/nice-admin:dev-master
Installation
The plugin will need to be loaded using Plugin::load('NiceAdmin')
in your /config/bootstrap.php
.
Usage
To use the helpers you will need to add them to your helpers array in your AppView
.
$this->loadHelper('NiceAdmin.StatusLights', $options); $this->loadHelper('NiceAdmin.Actions'); $this->loadHelper('NiceAdmin.Gravatar'); $this->loadHelper('NiceAdmin.Boolean');
Loading StatusLights Helper
You can pass in an array of options into the StatusLights helper. The key of the array is the status_id
then an
array of the label
to display and the class
of the item output.
$options = [ 1 => [ 'label'=>'Live', 'class'=>'label label-success' ], 2 => [ 'label'=>'Inactive', 'class'=>'label label-inverse' ], 3 => [ 'label'=>'Deleted', 'class'=>'label' ] );
The example here replicates the default settings in the helper. So if you are happy with the defaults, you don't need to pass these options in.
StatusLights Helper
This will convert a status link into a nice visually identifiable label.
<td>
<?= $this->StatusLights->status($entity->id); ?>
</td>
ActionButtons Helper
You can output either buttons or icons depending on which you need. The helper will, by default, output all three links
as buttons. Passing in an array of buttons you want to ouput as v
,e
and/or d
. For 'View', 'Edit', and 'Delete'.
Then you'll need to pass in the controller. The last option is either icons
or buttons
.
<td class="actions">
<?php echo $this->Actions->actions($entity->id, ['e','d'], 'myController', 'icons');?>
</td>
Loading Boolean Helper
Similar to the StatusLights helper you can pass in an array of options to customise the display of the output.
$optons = 1 => [ // true 'class'=>'badge badge-success', 'display'=>'✔' ], 0 => [ // false 'class'=>'badge badge-important', 'display'=>'✘' ] )
Boolean Helper
<?= $this->Boolean->display(1); ?>
What's it look like?
Further development
Let me know what features you'd like or feel free to fork and create a pull request.
License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.