Skip to content

djbuch/yii2-switch-widget

 
 

Repository files navigation

Bootstrap Switch Widget for Yii2

Latest Version Software License Build Status Coverage Status Quality Score Total Downloads

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'
    ]
]);?>

Testing

$ ./vendor/bin/phpunit

Contributing

Please see CONTRIBUTING for details.

Credits

License

The BSD License (BSD). Please see License File for more information.


web development has never been so fun
www.2amigos.us

About

Bootstrap Switch Widget for Yii2

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%