2amigos / yii2-switch-widget
The bootstrap switch widget for the Yii framework
Installs: 108 540
Dependents: 6
Suggesters: 0
Security: 0
Stars: 17
Watchers: 21
Forks: 13
Open Issues: 1
Type:yii2-extension
Requires
- bower-asset/bootstrap-switch: 3.3.*
- yiisoft/yii2: ~2.0.0
- yiisoft/yii2-bootstrap: ~2.0.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.0
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2023-08-16 02:59:09 UTC
README
Renders a Bootstrap Toggle Switch plugin widget.
Installation
The preferred way to install this extension is through composer.
Either run
$ composer require 2amigos/yii2-switch-widget:~1.0
or add
"2amigos/yii2-switch-widget": "~1.0"
to the require
section of your composer.json
file.
Usage
The widget comes in two flavors:
- SwitchBox
- SwitchRadio
SwitchBox
This widget renders a Bootstrap Toggle Switch Checkbox input control. Best suitable for attributes with boolean states (on|off, true|false, 1|0) when used with model.
Example of use with a form
<?php
use dosamigos\switchinput\SwitchBox;
?>
<?= $form->field($model, 'validated')->widget(SwitchBox::className(),[
'clientOptions' => [
'size' => 'large',
'onColor' => 'success',
'offColor' => 'danger'
]
]);?>
Example of use without a model
<?= \dosamigos\switchinput\SwitchBox::widget([
'name' => 'Test',
'checked' => true,
'clientOptions' => [
'size' => 'large',
'onColor' => 'success',
'offColor' => 'danger'
]
]);?>
SwitchRadio
This widget renders a Bootstrap Toggle Switch Checkbox radio list control. Best suitable for attributes with multiple states when used with a model.
Example of use with a form
<?php
use dosamigos\switchinput\SwitchRadio;
?>
<?= $form->field($model, 'status')->widget(SwitchRadio::className(), [
'items' => [
20 => 'rejected',
40 => 'approved',
50 => 'on hold'
],
]);?>
Example of use without a model
<?= \dosamigos\switchinput\SwitchRadio::widget([ 'name' => 'shape', 'inline' => false, 'items' => [ [ 'label' => 'best', 'value' => 100, 'options' => ['data-size' => 'mini'] ], 20 => 'good', 40 => 'superior', 50 => 'master' ], 'labelOptions' => ['style' => 'font-size:16px'] ]);?>
Not displaying the label
<?= $form->field($model, 'validated')->widget(SwitchBox::className(),[ 'options' => [ 'label' => false ], 'clientOptions' => [ 'size' => 'large', 'onColor' => 'success', 'offColor' => 'danger' ] ]);?>
Using code fixer
We have added a PHP code fixer to standardize our code. It includes Symfony, PSR2 and some contributors rules.
./vendor/bin/php-cs-fixer fix ./src --config .php_cs
Testing
$ ./vendor/bin/phpunit
Contributing
Please see CONTRIBUTING for details.
Credits
License
The BSD License (BSD). Please see License File for more information.
Custom Software | Web & Mobile Software Development
www.2amigos.us